I think Arise is sth I had seen and at the time motivated these thoughts. It is a bash based static site generator, that, according to its docs, it is build with the philosophy of minimal language requirements as well as other dependencies.
I would argue that a solution like this is better than heavily nested JSON files, or a cascade of Ordered Dicts in Python, or even a db.sqlite that would require the user parse or query the data somehow. In fact, a user could retrieve the static site from their own distro package manager and run it in bash with minimal dependencies.
I haven’t tested this solution yet, but it looks very promising as to what I originally had in mind.
As an innocuous example of sharing data with pure bash and Arise, these people here have preserved the Trigedasleng dictionary, the fictional language from the science-fiction/young adult show The 100, after another fan site was taken down. They use a github repo as data backend, and Arise as a static-site generator for github pages. All their data are stored in lots of version controlled JSON files instead of a database. According to the authors, this democratizes the process of forking and adding data to the repository.