Member-only story
Saving the day with git-for-data revision control and GraphQL for content management
I sat down this morning to update our website and one of the plugins we use now had a field that was mandatory and inconsistently applied to our front matter. The effect was that building the website build process failed and I was unable to publish new updates to our website.
Building a sturdy content pipeline is not necessarily easy, but it is even harder when it’s hard to pinpoint the sources of errors and the revision history. With regular git, you manage files. We manage a database of hierarchically structured records that have a specific content model and that makes it easy to use automatically generated forms to update them.
Content management with benefits of structure
Content management is a broad topic. We are managing content that is deeply nested, model-based and structured, rather than just some easier markdown fields with metadata.
We chose to build our website as a hypergraph using a strong model-based approach, where each webpage is structurally linked to other elements, and where every field is handled as linked data. Visualised using our content management tool for the content connections, the content looks like this: