BookStack
Open-source wiki (MIT licence) to host yourself to organise and store information: content in books, chapters and pages, global search, visual editor and Markdown editor with preview, diagrams.net diagrams, revision history, image management and a full role and permission system. Built with PHP, Laravel and MySQL, it runs on a small server. Interface available in French, English, German, Spanish, Italian, Japanese, Dutch, Polish and Russian, among others. Created by Dan Brown; the code is hosted on Codeberg.
Internal documentation (procedures, job descriptions, recipes, passwords excluded) with a three-level hierarchy, an editor, search and read permissions is a textbook web-development case, and that is exactly what BookStack does. The reason to use it rather than rebuild it is that it is free, simple and already translated into French. What costs: hosting, backups and PHP security updates, which you have to follow yourself. For fewer than thirty pages, a folder of Markdown files is enough.
What you lose
- Global search and the permission engine, already finished.
- The two editors (visual and Markdown) and built-in diagrams.
- Revision history.
- The interface already translated into French.
Existing alternatives to BookStack
- Wiki.jsOpen source
Modern open-source wiki (AGPL-3.0) with Markdown, access rights and several spaces, self-hosted.
- DocmostOpen source
Open-source collaborative wiki (AGPL-3.0) organised in document spaces, for small teams.
What a home-built tool costs once it exists
- Hosting and database: a server cost, and automatic backups you actually test.
- Security and GDPR: dependency updates, an HTTPS certificate, protection of your customers’ data.
- Upkeep time: who fixes the tool on a Saturday night in the middle of service if the server goes down?
The prompt to build it yourself
Build an internal wiki for my team, replacing a documentation tool. Context: a small company of 8 people, about forty procedures to document, written in Markdown. To do: - Pages organised in books and chapters, with a Markdown editor and a preview. - Full-text search on titles and contents. - Roles: reader, editor, administrator, with rights per book. - A change history with rollback to an earlier version. - Attachments and images with a maximum size. - A PDF export of a book. Out of scope: real-time collaborative editing, diagrams. Stack: web app, SQLite or PostgreSQL. README: how to run, backing up the database file and attachments, and a reminder not to store passwords in pages.
Frequently asked questions
- How much does BookStack cost, and what do you really pay for?
- Listed price: free. What the subscription covers and is hard to maintain yourself: Global search and the permission engine, already finished.; The two editors (visual and Markdown) and built-in diagrams.; Revision history.; The interface already translated into French..
- What free or open-source alternatives to BookStack exist?
- Wiki.js (open source), Docmost (open source). Options to compare before committing to a custom build.
- Where do you start to build an equivalent of BookStack?
- Copy this page’s prompt into Claude, Codex or Cursor to get a first prototype. Then plan for hosting, data backups and GDPR compliance: that is what costs the most to maintain over time.
How are our verdicts established? Read our detailed methodology ↗
Community feedback
Readers tell what they built instead of this tool, or what broke along the way. Every entry is reviewed before publication.
No feedback published yet. Have you tried replacing this tool? Tell us about it.
Share your feedback
More like this
- Bear · NotesReplaceable
- Evernote · NotesPartly replaceable
- Notion · from €9.50/month/userPartly replaceable
Are you the publisher of BookStack? Badge for your site
Badge for your website
Display the casevibecode verdict on your website or documentation.
<a href="https://casevibecode.fr/en/logiciel/bookstack" target="_blank" rel="noopener noreferrer"><img src="https://casevibecode.fr/api/badge/bookstack?lang=en" alt="casevibecode verdict: Replaceable" /></a>