Much like how I disliked the bloat of wordpress, I also don’t like how bloated mediawiki is.
I think I’ve learned enough of javascript and sql to build something similar for myself.
I would start with a blank page, the home page. Additional pages would only be able to be created if it’s linked from another page. This enforces organization and prevents dead links.
On a single page, each paragraph would be considered the smallest “unit”. This enables stronger searching with sql queries. Instead of returning a full page with a match, it would be easier to return which segment of the page that matched.
Using javascript I would make the page’s content and the html forms be dynamic. It definitely won’t be as advanced as Mediawiki’s VisualEditor but it would be similar.
I would make it so that if I double-tapped the space between paragraphs, a new textarea would be inserted in-line, allowing a new segment to be added to the page. Tapping away from this area or hitting the return key twice so as to end a paragraph would save the textarea to the db in a post action. To maintain a fluid/desktop like feel I will not reload the page but use javascript to replace the textarea box with a simple p tag.
I would not re-invent the wheel and adopt markdown. So to create a link to a new page I would put a word in square brackets. This would be rendered as a link (to a page that would not yet exist), after saving the segment it would render as a red hyperlink or blue if it already exists.
Editing a segment would be the same, just double tapping the segment (paragraph). Javascript would remove the paragraph and replace it with a textarea of the same size and content.
It’s another idea and it may never happen. But it sure would be nice to have it for studying this CMLTO refresher course 😋