Multiple users, multiple wikis for TiddlyWiki.
- Bag & Recipe system for storing tiddlers.
- User and Role management with ACL.
- Multiple database engines supported, using Prisma.
- Third-party OAuth and password-based login.
- Plugins can add routes and hooks.
- Abstractions everywhere, allowing flexibility.
- The source code is fully typed and easy to navigate.
- Admin endpoints can also be called from the CLI.
Most of these features are still in development.
The init command creates a new folder and installs what you need to get started.
npm init @tiddlywiki/mws@latest mwscd mwsnpm start
You can customize the defaults by modifying mws.run.mjs.
- the server runs on port
5000. It does not use HTTPS by default, but you can enable it by specifying a key and cert. - A
localpass.keyfile is created to hold the password keyfile. If this file changes, all passwords will need to be reset. - The data folder (
wikiPath) iswikiby default.
The initial user created on first run has the username admin and password 1234.
If you run into trouble, or need help figuring something out, feel free to start a discussion. If you know what's wrong, you can also open an issue.
This is the process for updating to a new version of MWS.
- Copy or zip your
storefolder to a safe backup folder. npm install @tiddlywiki/mws@latest- Run
npm start. This will update the database schema automatically if there are new changes.
If there are any database changes, MWS should pick them up and apply them. The changes are generated by prisma's builtin migration and are supposed to preserve data, but backups are still highly recommended.
If you want to work on the project,
git clone https://github.com/TiddlyWiki/MultiWikiServernpm installornpm run install-androidcd react-user-mgmtnpm installcd ..npm run certs- if you want httpsnpm start- this runs the build and test every time, but it's pretty fast
You can change the listeners as explained in the mws.dev.mjs file.