Storytelling tool: decoupling editing and viewing stories
obara.justin at gmail.com
Wed Aug 5 11:58:42 UTC 2020
Hi Gregor and Dana,
I was reading over the Branches <https://github.com/fluid-project/sjrk-story-telling/blob/master/docs/BRANCHES.md> doc for Storytelling this morning and also reflecting on the testing work that was needed following the 0.3.0 release last week. If I’m understanding things correctly, only the AIHEC <https://aihec.inclusivedesign.ca/> (currently in production use) and staging <https://staging-stories.floeproject.org/> sites allow for authoring stories. During the “Storytelling Tool long-term technical road map discussion <https://docs.google.com/document/d/1Y7nXxUeCt9qcLQbjYoblzsrKLKpeLA2H6kFyu-EsIl4/edit#heading=h.wn80pjfkqwr2>” we spoke about the possibility of integrating with a SSG like 11ty <https://www.11ty.dev/>. I don’t think I fully grasped, and may still not, the distinction between the authoring of stories and viewing stories on the site. At the moment it appears that these are coupled together into a single system which can be set to enable story authoring/editing. In the case where editing is disabled there is still a server and database backing the browsing/viewing of stories.
If our end goal is to decouple the authoring/editing from the story viewing/browsing, we should revisit this along with the login and authentication. It will probably depend on how things are actually implemented so I’ll just illustrate one possible scenario below. We should consider how we actually want this to work, what the benefits and tradeoffs are, and etc.
The deployed story site is always a static site. When a story is authored/edited, the server triggers the site to redeploy at which point the static site is regenerated with the content stored in the database. When story authoring/editing is enabled, an instance of the storytelling tool is deployed alongside it. The storytelling tool being just an authoring interface which stores stories to the database. When login/authentication is provided, it will also provide a view into the users' stories for editing/deleting. When story authoring/editing is disabled we only deploy the static site; the storytelling tool does not need to be deployed. Additionally the backend database can be archived and disabled if the stories are intended for view only and are effectively archived.
Points of configuration between the systems would include configuration for the SSG to enable/disable the link to the storytelling tool, linking from the storytelling tool to the published story on the static site, and styling for preview in the storytelling tool to match the output in the static site.
Please let me know what you think and if I’m misunderstanding anything.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the fluid-work