A local wiki install is when you run Federated Wiki on your own computer (or a Raspberry Pi) so you can create pages, test plugins, and experiment without touching a public server. It’s also the easiest way to learn how wiki data is stored on disk, because you can see the `pages/` folder filling up with JSON as you edit. - github.com ![]()
# What you need
Federated Wiki is a Node.js app, so you need Node and npm installed before anything else. On macOS you can use Homebrew, on Linux you can use your distro packages, and in all cases the official Node installer works fine if you want the simplest path. - nodejs.org ![]()
# The simplest install If you just want it working quickly, install the wiki package globally and start it. This is the closest to how many people run it on a small server, and it’s easy to remember.
npm install -g wiki --global-style mkdir -p ~/Wiki cd ~/Wiki wiki --data .
Then open http://localhost:3000 in your browser and start editing.
# The best install for plugin development If your goal is writing or hacking plugins, I prefer a “project-local” install so everything (the wiki, the plugins, and your test data) lives in one folder and is easy to throw away or copy. This matches the mental model of: > A wiki is a Node project plus a data directory.
mkdir -p ~/fw-dev cd ~/fw-dev npm init -y npm install wiki --global-style npx wiki --data ./data
This makes plugin work nicer because you can npm install or npm link plugins into ~/fw-dev/node_modules/ and immediately see the result in your running wiki. - npmjs.com ![]()
# Where your pages live Your content lives inside the --data folder you choose. In there you’ll typically see a pages/ directory containing one JSON file per page. Treat this folder as your Wiki Vault: back it up, version it, or sync it, but do it consciously.
If you put your data folder inside iCloud/Dropbox/Drive, you get effortless backup, but you also risk sync conflicts if the wiki is running while the sync tool is rewriting files. If you do use cloud sync, I’d keep the wiki stopped while syncing, or sync via a proper backup job rather than “live mirroring”.
# Installing plugins locally Once you have a local wiki running, plugins are just npm packages. For development you usually want one of these patterns.
Install a plugin normally into your local project:
cd ~/fw-dev npm install wiki-plugin-someplugin
Or install a plugin from a local git clone (great when you’re modifying it):
cd ~/fw-dev git clone https://github.com/fedwiki/wiki-plugin-journalmatic.git npm install ./wiki-plugin-journalmatic
Or use npm link so edits in the clone are reflected immediately:
cd ~/fw-dev/wiki-plugin-journalmatic npm link cd ~/fw-dev npm link wiki-plugin-journalmatic
# Running your local wiki like a tiny server For a Raspberry Pi or a home server you can keep it running with a process manager (pm2) or a system service (systemd). The important idea is that you’re still running the same wiki --data … command, just supervised so it restarts if it crashes and starts on boot.
# Common “why isn’t it working” checks
Make sure you’re starting the wiki with the same --data folder you think you are, because people often run multiple wikis and then edit the “wrong” one. Also check that Node/npm are recent enough, and that you installed with `--global-style` when required by the wiki package’s install mode - npmjs.com ![]()
# See - Guide to Freedomt - Local Wiki Install - Journalmatic