Hi HN! After working on several larger Content Management System (CMS) integrations, I noticed that existing commercial CMSs suffer from workflow issues that are similar to developing software in a team without using a version control system. This is because today's CMSs typically rely on a shared folder-like approach, where editors work in a single shared space and then publish content to production “file by file”.<p>However, as software development and content management essentially share the same workflows (create -> iterate -> release/publish -> maintain), I started looking for ways to build the usual Create, Read, Update, Delete CMS APIs on top of Git. At the same time, there is a market trend in ecommerce away from using large systems that do many things to architectures consisting of smaller systems that are easier to maintain and integrate ("composable commerce").<p>I can address both of these aspects with Contentlab (<a href="https://github.com/contentlab-sh/contentlab" rel="nofollow">https://github.com/contentlab-sh/contentlab</a>):<p>It is an Open Source library I developed to generate and run a GraphQL content management API on the fly, exclusively from data in a Git repository. This enables content to be stored and managed with all Git features (branching, merging, immutability, etc.) and should allow for vastly improved editing workflows. By stripping out all non-essential features like user management and an editing UI, I think the library also fits really well into "composable" architectures.<p>Functionality and code quality is not yet where I want it to be but it is working well enough to power my own website.<p>A really simple example application using Contentlab is at <a href="https://github.com/contentlab-sh/example-code-serverless" rel="nofollow">https://github.com/contentlab-sh/example-code-serverless</a> and an example content model for a multilanguage website is at <a href="https://github.com/contentlab-sh/example-content-multilanguage-website" rel="nofollow">https://github.com/contentlab-sh/example-content-multilangua...</a><p>I appreciate any feedback and absolutely encourage questions. Thanks!