Do these -
BUG - sub directories get their links screwed with extra path.
For such fragments, rename their results to menu.FRAGMENT. metadata.isFragment
Contstruct metadata.webtrail in createHTML from links to index.HTML in the various bits of the path of the input file.
Check the timestamps on the files, only update if source is newer than destination. Meh, it’s already 600 times faster than the pandoc version.
Add atom feed for single page. Alas cgit only seems to have ATOM feed on the whole repo, not individual files.
Try out -
htmx
pandoc replacements cmark-gfm
cgit has Lua
User system - levels - banned reader member moderator editor admin shell root
Banned people can’t do squat, except maybe pester an admin once to start the unbanning process.
When first registered, accounts are set to reader level. Initial verification by email. Readers can only edit their own profile.
If an existing member vouches for a reader, they get promoted to member. Some invite system would count is vouching, but need to get secure invite credentials to someone outside the system.
Members can chat, and create their own sandboxes that might get promoted by editors / moderators to proper content.
Moderators can move things around, including to a spam/trash place. They can ban readers and members.
Editors can edit any content, and move things around. They can’t edit the site elements itself. So they can edit the site menu and structure of the content, but not the footer? Certainly can’t edit any admin stuff.
Admins are set by other admins. Admins can promote / demote people and content at any time. Admins can edit anything, including web editing of config files, and managing of modules.
shell level means you have direct access to the files that are the web site, including configuration and modules. Likely this is the person that set the system up in the first place.
Admin should have access to everything that shell level has, but there’s always things need tweaking at some lower level. Built in file browser might do the trick. Would be useful for content creators to to organise the content. Naturally should obey the permisisons.
root level is whoever controls the server things are running on. They can do anything at all.