Don’t have anything real here yet but thinking about this frequently.
- https://earthstar-project.org/
- https://git.coopcloud.tech/kawaiipunk/walkaway-wiki
- https://kawaiipunk.xyz
Git-based on the backend where people can have their own branches or downstreams and there’s a process to merge into the ‘main’ wiki. The who thing syncs in a share and the UI helps navigate the pages and the merging.
Existing threads:
%1okZC9TO4684w6WN12PSR+E7WkHYwZqHGDljJEafjBw=.sha256
%YxOtS0wQAKGMek3YgK+/hCqginib+TX5d3Ypr9gegEU=.sha256
Alternative options to git:
- https://github.com/bcpierce00/unison
- https://pypi.org/project/three-merge/
- https://unix.stackexchange.com/questions/717674/merging-two-non-git-based-text-files-with-similar-semantics-to-the-depiction-of
- https://stackoverflow.com/questions/16902001/manually-merge-two-files-using-diff
Additional thoughts as of 2023-01-10:
Why does it need to be git-based? Three-way merge conflicts could be addressed another way, like as in unison. Having to deal with committing, etc is a pain in the ass. My local use of unison for text-based wiki with unison to a webdav server has been seamless and no need to commit changes or do some hacky script to auto-commit changes.
Each user could have their own name-based subdirectory and there’s a
two-way sync between that and the main
directory.
Earthstar syncs the whole share around so that the contents isn’t centralized to one server but beyond that, the mechanics of the wiki is an independent app (maybe). You don’t need to depend on earthstar to handle conflicts between different people. The wiki app handles promoting content to the main tree but user dirs can host their own content that’s not pushed into the main tree.