Ask HN: Apps that are built with Git as the back end?
Hey HN, I'm working on a project that builds with git as the backend (https://github.com/inlang/inlang) and I'm looking for other projects that have a similar approach.
PS: Also apps such as VS-Code or Obsidian which work on local files and have git plugins would be interesting!
67 comments
[ 1.1 ms ] story [ 144 ms ] threadhttps://phiresky.github.io/blog/2021/hosting-sqlite-database...
It being stored in git is irrelevant to the end result. The same exact content without git could be on S3, or any other static hosting, and it would work exactly the same.
Another example, is the following map _using_ git, or is git just a method to get free hosting from Microsoft?
https://github.com/foundationalfactorio/foundationalfactorio...
https://foundationalfactorio.github.io/maps/#3/61.52/-2.46
The end result is just static files be served.
https://gerrit-review.googlesource.com/Documentation/note-db...
[0]: https://www.diagrams.net
If you like you could tag it git-scraping to add it to this list: https://github.com/topics/git-scraping
1. A git based tool to scrobble the music I am listening to, like Last.FM.
2. A status logger, I really, really miss the old MSN or GTalk days when there's a status line to show what my friends are doing or their mood. In fact most people have forgotten that's the original case for twitter.
3. A git based comment system to replace Disqus, I can merge for incoming comments or reject spam.
4. life streaming to log the movie I've watched or books I've read.
PS There is a small web sdk that enables comments on sited via github issues. see https://github.com/utterance/utterances
I don't need no db or a web API to store comments. A db need some moving parts to serve http, a third party service is unreliable in the long run. Comments can be stored as part of a static site, like in json for csv format, as it's frequently read but rarely written. Static files are easy to integrate into any webpage, easy to backup, migrate and grep.
I realize there are some problems yet to be solved, e.g. mask email address of the commentor.
I'm already sold on the idea of using Git as a database for content and localization. But I'm obviously biased as we are working on a similar solutation ;) It is called FrontAid and it is a CMS that stores your (localized) content in a JSON file within your own repo. More information can be found at https://frontaid.io/
Using Git for content has some great benefits. Like complete version history, easy reverts (for devs at least), (feature) branch support, Git hooks, ... And of course, you own your content at all times.
PS: Both the "Editor" and "VS-Code-Extension" links in your repo are broken.
Correct, the term git backend refers to git as a content database (with built-in version control and automation).
Regarding front aid, great to see fellow startups working on solution built on git. It took months to realize the benefits of git and the logical step to build the backend on git. sorry, use git as the content database.
PS ty, fixed the links! :)
https://github.com/microsoft/FluidFramework/tree/main/server...
1. https://github.com/microsoft/FluidFramework/tree/main/server...
2. https://github.com/isomorphic-git/isomorphic-git
3. https://github.com/nodegit/nodegit
https://github.com/CocoaPods?sort=stargazers
The API of libgit2 is great. If you don’t need the more advanced features of Git, I recommend taking a look!
Both serve files from a git repository, and lit will actually write to the repository. There are several others that Tim has built over the years, but those are the two that I am familiar with.
Like I said Tim has quite a few projects that interact directly with git.
[1]: https://twos.dev/winter
The main challenge for something like our app is search. Git is good at creating files and managing versions/branches but not good at search files or their content. I'm not a git expert to fully backup that claim but that's been our experience. You can layer on your own search capabilities if you need it but then you might want to start asking if a full DB is better.
https://github.com/GitJournal/GitJournal
Recent HN discussion: https://news.ycombinator.com/item?id=31914003
I used it as the editorial interface for a little static blog: https://www.wildernessprime.com/
When it came time to add strings and I/O I realized that it would mess up purity to provide the typical POSIX-ish filesystem APIs, so I thought, what if I denote strings (of byte sequences, or even bits) as a three-tuple of (hash offset length) backed by a git object store?
The IDE uses a git repo as its fundamental base or environment, you can only edit files that are in the repo (there is an "import" function (aka "git add") of course.) This includes source code and any string literals so your strings already automatically have a three-tuple, and this is true for selections as well.
The obvious thing then is to have (pure) functions that convert these three-tuples into, say, a list of 0..255 ints, or UTF-8 codes, or a (possibly multidimensional) array of floats or whatever...
It seems to work out nicely so far.