Frappe Wiki is an open-source wiki app on the Frappe Framework. Use it for product guides, help centers, company handbooks and team notes. Writers work in a rich text editor. Each change goes through review before it goes live, and the wiki keeps the history of every page. Readers get fast, clean pages with search and light and dark mode.
- Motivation
- Key features
- Under the hood
- Compatibility
- Production setup
- Development setup
- Learn and connect
Frappe Wiki, like many of our products, started from our own needs. We wanted a simple, clean, open-source wiki for the ERPNext documentation, and we did not find a good one. So we wrote our own.
Our goal was clear: an open-source wiki that writers and readers enjoy. Today we use Frappe Wiki for many things, such as user manuals and company policies. The interface is simple, so anyone on the team can write.
- Spaces. A space holds the pages of one wiki, such as a product guide or a handbook. Each space has its own URL, logo and access rules. A space can be public, or private to some roles.
- A rich text editor. Write with headings, tables, task lists, code blocks, callouts, images, Mermaid diagrams, PDFs and videos. Content is stored as Markdown. An image can have a dark-mode version.
- Change requests. Your edits collect in a change request, like a branch. A reviewer reads the diff, then approves, asks for changes or rejects it. When it is merged, the change goes live. Readers can also propose changes.
- A fast reader. Published pages have a page tree, a table of contents, search, light and dark mode, and PDF download. Readers can give feedback on each page.
- Analytics. See page views, new visitors, top pages and referrers for the whole wiki, a space or one page.
- GitHub Sync. Keep a space in step with a folder of Markdown files in a GitHub repository. Preview the folder on your development site before you push.
- SEO and AI readiness. Each page has meta tags and a generated social card. The wiki serves a sitemap, a Markdown copy of each page and an
llms.txtindex. A skill lets AI coding agents draft pages through change requests.
Write: the editor with the page tree, the toolbar and the page
Review: a change request with the changes side by side
Read: a published page with the page tree and the table of contents
Measure: page views, top pages and referrers
Sync: a space that GitHub Sync keeps up to date
Share with AI: copy a page as Markdown, or open it in ChatGPT or Claude
- Frappe Framework: a full-stack web application framework. It gives the wiki its users, roles, database and API.
- Frappe UI: a Vue component library. The wiki app at
/wiki-appuses it. - Tiptap: the editor framework. Pages are stored as Markdown.
- SQLite: full-text search for the pages.
- DuckDB: fast counts for the page view analytics.
This app is compatible with the following versions of Frappe:
| Wiki branch | Stability | Frappe branch |
|---|---|---|
| master - v2.x | stable | v15.x |
| version-3 - v3.x | stable | v15.x & v16.x |
| develop - nightly | unstable | develop |
On Frappe develop, Wiki also runs on SQLite (bench new-site --db-type sqlite). Frappe still marks SQLite support as experimental.
Older, unsupported versions
| Wiki branch | Frappe branch |
|---|---|
| version-14 | v14.x |
| version-13 | v13.x |
Frappe and Wiki do not support these versions. These branches do not get fixes, and we do not accept contributions to them.
You can try Frappe Cloud, a simple, user-friendly and sophisticated open-source platform to host Frappe applications with peace of mind.
It does the installation, setup, upgrades, monitoring, maintenance and support of your Frappe deployments. It is a full developer platform that lets you manage many Frappe deployments.
Use Frappe Pilot to host Frappe Wiki on your own server. Pilot installs and manages benches and sites, and sets up production for you.
- Install Pilot and create a bench. Follow the steps in the Pilot README.
- Get the app, create a site and install the app on it:
pilot -b <bench> get-app https://github.com/frappe/wiki --branch version-3
pilot -b <bench> new-site <site>
pilot -b <bench> install-app <site> wikiThen open /wiki-app on your site. For more, see Install Frappe Wiki.
- Set up a bench with Frappe Pilot, or with the bench CLI, and start it:
bench start- In another terminal, in the
frappe-benchfolder, get the app and install it on your site:
bench get-app https://github.com/frappe/wiki
bench --site <site> install-app wikiWork on the documentation
The user guide is in docs/. GitHub Sync publishes it, and docs/.wiki.yml sets the order of the sidebar. To see your changes as you write, preview the folder on a development site. The command syncs again when you save a file, and open pages reload:
bench --site <site> wiki preview-docs apps/wiki/docs --route docs-preview --watchThe screenshots are in docs/images/, in a light and a dark version. scripts/docs-screenshots/ takes them again from a site with demo data.
Run the tests
# Python tests
bench --site <site> run-tests --app wiki
# Browser tests, against a running site
yarn test:e2e