rfcs
rfcs copied to clipboard
move Wiki from Github
##Proposal Move the SuperCollider Wiki from GitHub and use Sphinx to generate static site.
Motivation
A wiki is hopefully a permanent reference. But in the history of SC, there has already been (at least?) one abandoned wiki that was migrated to the GitHub wiki, and while GitHub is a convenient place, it is not a place to support. I therefore advocate, in support of #6114, to move the current wiki https://github.com/supercollider/supercollider/wiki to https://wiki.supercollider.online and making it a repository that creates a static website, which serves as the new wiki. This would allow to take ownership of the wiki URL and be independent of the code hosting platform, making it a permanent location for the precious information.
This would also prepare the community/wiki in case GitHub needs to be evacuated.
Description of the proposed feature
I first thought about making a real wiki, but I think a static website is easier to maintain and has a longer lifespan. A small wiki like SC should be suitable for a static site generator.
I decided to use Sphinx as a static website generator because it is an established tool and has a pretty stable API (compared to NodeJS based tools).
I also don't have a clue how to contribute to the existing wiki (fork the wiki-repo and do a PR?) as I don't have editor privileges, but making it a repo would allow anyone with access to git to edit it via a PR workflow.
Sphinx would also allow to create indices, references, glossary, build local tocs, provide a search and also verify that all internal links are working during build time.
The main advantages I see
- independence of any hosting platform - hosting a static website can be easily done these days
- searching the wiki
- editing can be performed offline
- internal references can be checked for dead links at build time
- custom styling
- Clear PR workflow (how can the current wiki be edited? It has a git repo but how do I make a PR on it?)
- website structure is independent of folder structure, which allows to improve the organization of files
Implementation plan
I cloned the existing wiki and converted it to a Sphinx website - this means that the history of most pages is untouched, preserving valuable git history (see https://github.com/capital-G/supercollider-wiki/blame/main/docs/contributing/workflow/Unit-Testing-Guide.md)
Repo: https://github.com/capital-G/supercollider-wiki Website: https://capital-g.github.io/supercollider-wiki/
Currently hosted on GitHub pages - although this PR is motivated to evacuate GitHub, I think it is still okay to use their CI for now. The build step and serving of static content can easily be moved to e.g. GitLab.
I would be happy to take up some styling suggestions or commits, as this wiki would allow us to style and modify in such a way we want, and not how GitHub thinks it should be done.