To get started, clone, install dependencies (Node v14) and run npm start
:
cp example.env .env
# Edit the config to start hacking
code .
npm install
npm start
This is a hackable demo of the Uttori Wiki library and several plugins. The edit_key
and delete_key
are both set in the .env
file. These are required to make, edit or delete documents and should be appended to the URL, for example to edit this page click here. You can also make a new document but will need the key in the URL, so the button in the top right should 404
. Try creating new documents with the site section tags examples
, reference
, or tutorial
and watch as the site section counts increase.
This content is written in Markdown and rendered with the Uttori MarkdownIt Renderer Plugin that included some other nice to have features like Table of Contents generation and WikiLinks support like [[cool-example|Cool Example]].
This line says that this was written on the Windows operating system, but the Replacer Renderer Plugin plugin has replaced Windowz
with macOS
. Useful for preventing hateful content from showing up, custom emoji replacement, or other fun uses.
The files are stored as JSON file on disk using the Uttori Storage Provider JSON File Plugin.
Search is powered by the Uttori Search Provider Lunr Plugin, try searching for cool
.
File Uploads are powered by the Uttori Multer Upload Plugin and can be tested on the Edit pages.
There are several optional View Model plugins that are used to add more data to be sent to the front end:
- Uttori View Model Enrichment Plugin - Popular Documents - A plugin to expose and add popular documents to a view-model or other object.
- Uttori View Model Enrichment Plugin - Recent Documents - A plugin to expose and add recently edited documents to a view-model or other object.
- Uttori View Model Enrichment Plugin - Random Documents - A plugin to expose and add randomly selected documents to a view-model or other object.
- Uttori View Model Enrichment Plugin - Related Documents - A plugin to expose & add related documents with shared tags for a given document to a view-model or other object.
The Popular document depends on a valid Uttori Analytics Provider, and the one being used is the Uttori Analytics Provider JSON File Plugin.
Just for completeness sake in testing features the Uttori Sitemap Generator Plugin is setup for generating a valid sitemap.xml
for Google or other interested crawlers.