| @@ -243,17 +243,6 @@ Provide a CLI to for the most basic user journey: · 242 unmodified lines |
| 243 | as well. What would an MVP look like? Maybe even something that could ship with gitoxide. | 243 | as well. What would an MVP look like? Maybe even something that could ship with gitoxide. |
| 244 | * [ ] A truly awesome history rewriter which makes it easy to understand what happened while avoiding all pitfalls. Think BFG, but more awesome, if that's possible. | 244 | * [ ] A truly awesome history rewriter which makes it easy to understand what happened while avoiding all pitfalls. Think BFG, but more awesome, if that's possible. |
| 245 | * [ ] `git-tui` should learn a lot from [fossil-scm] regarding the presentation of data. Maybe [this](https://github.com/Lutetium-Vanadium/requestty/) can be used for prompts. Probably [magit] has a lot to offer, too. | 245 | * [ ] `git-tui` should learn a lot from [fossil-scm] regarding the presentation of data. Maybe [this](https://github.com/Lutetium-Vanadium/requestty/) can be used for prompts. Probably [magit] has a lot to offer, too. |
| 246 | * An event-based database that uses commit messages to store deltas, while occasionally aggregating the actual state in a tree. Of course it's distributed by nature, allowing | | |
| 247 | people to work offline. | | |
| 248 | - It's abstracted to completely hide the actual data model behind it, allowing for all kinds of things to be implemented on top. | | |
| 249 | - Commits probably need a nanosecond component for the timestamp, which can be added via custom header field. | | |
| 250 | - having recording all changes allows for perfect merging, both on the client or on the server, while keeping a natural audit log which makes it useful for mission critical | | |
| 251 | databases in business. | | |
| 252 | * Can markdown be used as database so issue-trackers along with meta-data could just be markdown files which are mostly human-editable? Could user interfaces | | |
| 253 | be meta-data aware and just hide the meta-data chunks which are now editable in the GUI itself? Doing this would make conflicts easier to resolve than an `sqlite` | | |
| 254 | database. | | |
| 255 | * ~~A git-backend for `sqlite` which should allow embedding sqlite databases into git repositories, which in turn can be used for bug-trackers, wikis or other | | |
| 256 | features, making for a fully distributed github like experience, maybe.~~ | | |
| 257 | | 246 | |
| 258 | ### Ideas for Spin-Offs | 247 | ### Ideas for Spin-Offs |
| 259 | | 248 | |
| @@ -265,6 +254,18 @@ Provide a CLI to for the most basic user journey: · 5 unmodified lines |
| 265 | * [ ] A [syncthing] like client/server application. This is to demonstrate how lower-level crates can be combined into custom applications that use | 254 | * [ ] A [syncthing] like client/server application. This is to demonstrate how lower-level crates can be combined into custom applications that use |
| 266 | only part of git's technology to achieve their very own thing. Watch out for big file support, multi-device cross-syncing, the possibility for | 255 | only part of git's technology to achieve their very own thing. Watch out for big file support, multi-device cross-syncing, the possibility for |
| 267 | untrusted destinations using full-encryption, case-insensitive and sensitive filesystems, and extended file attributes as well as ignore files. | 256 | untrusted destinations using full-encryption, case-insensitive and sensitive filesystems, and extended file attributes as well as ignore files. |
| | 257 | * An event-based database that uses commit messages to store deltas, while occasionally aggregating the actual state in a tree. Of course it's distributed by nature, allowing |
| | 258 | people to work offline. |
| | 259 | - It's abstracted to completely hide the actual data model behind it, allowing for all kinds of things to be implemented on top. |
| | 260 | - Commits probably need a nanosecond component for the timestamp, which can be added via custom header field. |
| | 261 | - having recording all changes allows for perfect merging, both on the client or on the server, while keeping a natural audit log which makes it useful for mission critical |
| | 262 | databases in business. |
| | 263 | * **Applications** |
| | 264 | - Can markdown be used as database so issue-trackers along with meta-data could just be markdown files which are mostly human-editable? Could user interfaces |
| | 265 | be meta-data aware and just hide the meta-data chunks which are now editable in the GUI itself? Doing this would make conflicts easier to resolve than an `sqlite` |
| | 266 | database. |
| | 267 | - A time tracker - simple data, very likely naturally conflict free, and interesting to see it in terms of teams or companies using it with maybe GitHub as Backing for authentication. |
| | 268 | - How about supporting multiple different trackers, as in different remotes? |
| 268 | | 269 | |
| 269 | [syncthing]: https://github.com/syncthing/syncthing | 270 | [syncthing]: https://github.com/syncthing/syncthing |
| 270 | [fossil-scm]: https://www.fossil-scm.org | 271 | [fossil-scm]: https://www.fossil-scm.org |