Had a question around the architecture of a system I am working on.
Current State - Client logs in and adds content. The content lives in a hosted solution. The content can be manipulated in the UI. Once manipulation is done. Client saves content. Future (currently read only) access is via (REST’y) API. The content does not change very much after first write. Changes are done in the app UI.
<!-- Beer was consumed, with good company -->
Future state - Add a new way to access data.
(1) Export content via .md files. Provide .md files in such a way that a static site generator can be used to build a static microsite, which can be deployed by the client.
<!-- More beer, company turning dodgy... -->
(2) Host this solution. This way:
(a) add a page structure object, i.e. links etc. This can handle navigation and folder structure on the deploy.
(b) use handlebarjs or something similar to generate the html and save to the db
© write to external FS as a seperate process. Assuming have the html content in the db anyways…
One consideration is that this could optimize the site generation itself. So we know what pages changed, (say a blog), only rebuild the pages with changes, so most pages will not need to be recreated.
The other point is that this happens while the client is working in the app. So do not need to do any server side rendering. I guess.
This gives the ability to publish a small micro site without too much trouble. Directly to github pages or whatever if required…
Looking for how to best think about this - thanks in advance. I understand this is not a simple solution, but want to understand exactly what is involved…