Documentation filed into books, chapters and shelves
BookStack is a documentation wiki written in PHP on Laravel, which you run on your own server. Content lives on four fixed levels: pages, optionally grouped into chapters, inside books, which shelves then collect. One book can sit on several shelves. The README calls BookStack an "opinionated" platform and sets the bar low on purpose: basic word-processing skills should be enough to start writing.
The comparison of self-hosted wikis sets this structure and BookStack's authentication against those of the other wikis.
Visual or Markdown editing, per-page permissions
- Structure you can rework: pages and chapters move between books, and since v22.06 a chapter converts into a book and a book into a shelf.
- A visual editor and a Markdown editor: the visual one is built on TinyMCE, and a Markdown page keeps its source in the database next to the rendered HTML. Diagrams are drawn in diagrams.net, embedded in the editor.
- Permissions down to the page: a role gets global rights, then rights on a given shelf, book, chapter or page. Book and chapter permissions cascade to their content; shelf permissions don't.
- LDAP, SAML 2.0 or OpenID Connect: with OIDC, email login goes away and provider groups map to roles by name. Two-factor authentication uses a TOTP app.
- Exports and portable ZIP: PDF, HTML with embedded images, plain text or Markdown. Since v24.12 a ZIP format moves content from one instance to another, and the REST API has exported and imported it since v25.07.
One maintainer and no simultaneous editing
Four levels, and no more. Dan Brown, the creator and lead maintainer, fixed these levels for usability reasons and wrote in December 2023 that he had no intent to add more (issue #95). In October 2025 he still called a level below the page "very unlikely" (#5852). The project turns down plugins as well: its FAQ prefers built-in features. Customizing an instance goes through the theme system, which gained modules in v26.03.
PHP and MySQL, no official Docker image. BookStack needs PHP 8.2 or later with twelve extensions, Composer 2.2, Git, a web server, and MySQL 8.0 or MariaDB 10.6 at minimum. The docs name no other database and give no memory figure. The official install is a Git checkout or a script for Ubuntu; the Docker images from LinuxServer.io and solidnerd are community-maintained. Shared PHP hosting is not supported.
No simultaneous editing. The request dates back to 2017 (#395). In February 2026 the maintainer said the move to a new Lexical-based editor was made with this in mind, and that he was still working out how to merge edits in PHP. That editor is still in beta as of v26.09. Outline, by contrast, describes itself as realtime collaborative.
Dated versions, many security fixes. A version number is the year and month: the latest, v26.09.1, came out on September 29, 2026. Three feature releases shipped in 2026, five in 2025. Of the 22 releases since January, 13 are security releases; v26.05.4 closed, among other things, a remote code execution path through ZIP import. The project warns that feature releases are more likely to break an install: since v26.09, an instance without an APP_KEY throws an error.
One maintainer, paid support, no cloud. Dan Brown has 4,714 commits on the GitHub mirror; the next contributor has 126. Donations and sponsorships cover about half the funding and support plans (£450 or £4,500 a year) the rest, with no feature held back for paying customers. The FAQ rules out any hosted offering. Development has run on Codeberg since April 2026. The license is MIT; Wiki.js is AGPL-3.0, and Outline uses BSL 1.1, a license whose own text says it is not open source.
