Current status: proof of concept, not publicly released.
#History#
History
I started working on my own solution, with the temporary name of gitcms. Here is the architecture in a nutshell:
This is how it works:
Github repository
Each time a commit is pushed the repository, and event will be triggered. It is possible to catch this event using a webhook which basically allows to send some meta data in JSON format to an address for further processing.
gitcms
Implemented as a middleware solution, it is not CMS specific. It receives the push event from github, figures out what files changed, fetches the files from github in raw format and converts them to HTML. After the conversion is done, it sends a message to the registered Adapter(s).
Adapter
This is build CMS specific and can interpret the message from the middleware. In the end it needs to create, update and delete articles.
#Pending issues#
Pending issues
- How to deal with images or any other media files.
- Calls are synchronously, consider decoupling using messages queues.