Tildewiki 

A wiki engine designed around the needs of the tildeverse
A ton of refactoring has gone into 0.5. Here are some noteworthy changes:
- Index page is now being cached
- Refresh interval for the index page is configurable
- Logging can be output to
stdout (default), to a file, or to /dev/null for some peace and quiet.
I've been stress testing it with tsenart/vegeta.
With all the internal changes in v0.5, it can handle a lot of requests before performance
starts to degrade.
Currently powering the tilde.institute wiki:
Features
- Speed is a priority
- Mobile-friendly pages
- Markdown!
- Uses kognise/water.css dark theme by
default (and includes as an example, a simple but nice local CSS file)
- Automatically reloads YAML configuration when a change is detected.
- Generates list of pages and places at anchor-point in index page
- Caches pages to memory and only re-renders when the file changes
- Extremely configurable:
- URL path for viewing pages
- Directory for page data
- File to use for index page
- etc.
- Runs as a multithreaded service, rather than via CGI
- Easily use Nginx to proxy requests to it. This allows you to use your
existing SSL certificates.
Notes
For tildeverse projects, we tend to use a PR
workflow. For example, wiki pages are submitted to the repo via pull
request. That's what I'm initially designing this around. I will likely
add authentication and in-place page editing last, after everything else
is done, including unit tests.
Uses a patched copy of russross/blackfriday
(gopkg) as the markdown
parser. The patch allows injection of various <meta.../> tags into
the document header during the markdown->html translation.