Bookstack - More than a Self Hosted Wiki
Bookstack is my all time favorite wiki that I have been using for nearly 3 years. Let's check it out! 📘
The question comes up too much about what wiki software is the best on Reddit and forums. While I can't answer that directly because it's a very subjective answer, I can tell you that I have been using Bookstack for a few years and I absolutely love it. This review is far over due so let's dive in and talk about why I love Bookstack so much.
What is Bookstack?
BookStack is an opinionated wiki system that provides a pleasant and simple out-of-the-box experience. New users to an instance should find the experience intuitive and only basic word-processing skills should be required to get involved in creating content on BookStack. The platform should provide advanced power features to those that desire it but they should not interfere with the core simple user experience.
Install Bookstack using Docker Compose
Installing Bookstack is a simple as running this Docker Compose stack.
version: "2"
services:
bookstack:
image: lscr.io/linuxserver/bookstack
container_name: bookstack
environment:
- PUID=1000
- PGID=1000
- APP_URL=
- DB_HOST=bookstack_db
- DB_PORT=3306
- DB_USER=bookstack
- DB_PASS=<yourdbpass>
- DB_DATABASE=bookstackapp
volumes:
- /path/to/data:/config
ports:
- 6875:80
restart: unless-stopped
depends_on:
- bookstack_db
bookstack_db:
image: lscr.io/linuxserver/mariadb
container_name: bookstack_db
environment:
- PUID=1000
- PGID=1000
- MYSQL_ROOT_PASSWORD=<yourdbpass>
- TZ=Europe/London
- MYSQL_DATABASE=bookstackapp
- MYSQL_USER=bookstack
- MYSQL_PASSWORD=<yourdbpass>
volumes:
- /path/to/data:/config
restart: unless-stopped
The Bookstack Editor
Bookstack comes packaged with a WYSIWYG editor but can also be changed to Markdown in the settings for those who like traditional Markdown writing.
Getting Organized with Bookstack
Bookstack has several layers of organization and in my opinion, too many! 😆 But too many is more than not enough. For example, Shelves > Books > Chapters > Pages. I don't use Shelves myself but for someone who writes books for a living might find this very useful!
You can expand and collapse the pages within a book and by default, they are collapsed to save space on the parent book page. I also don't use chapters. My use case is just creating a Book as a category and then adding pages to the books. So in retrospect, I only use 2 layers of organization. Thankfully Bookstack has a great search feature that I use almost everyday!
Exporting Bookstack Content
Each page can be exported in 4 different ways.
You can choose to export pages as a Contained Web File, PDF File, Plain Text File or a Markdown File. That's quite generous if you ask me!
Furthermore, if you require a bulk export of your Bookstack content, you can do that by running a couple commands covered in the Bookstack documentation here.
Bookstack Public Permissions
Bookstack can be a public facing wiki or completely private behind a login screen.
To allow public access, just go to settings and tick the box. You can do much more refined permissions right down to the page if you wish.
Each page you create will have it's own permission options allowing you to make it private or public. You can even allow only certain groups of members to view content if you wish.
Customize The Bookstack look and Feel
Bookstack allows you to change the colors of the links, menu bar and content. You can add your own logo too!
Bookstack has a light and dark mode option. For those who would spend a lot of time writing in Bookstack, dark mode is a must!
You can toggle light or dark mode from the user menu on the top right. Over time things like this have been moved around but it's there if you need it!
Bookstack as a Community
Bookstack can be used as a community website. You can choose to let people register and even comment on pages in your wiki.
Bookstack can be used as a company documentation portal and much more. The options are endless and totally up to you as the user.
Final Notes and Thoughts
I personally have been using Bookstack for nearly three years and I cannot recommend it enough. I use Bookstack to document all of my self hosting activities and even more personal things. As I get older, it helps to have a tool like Bookstack to help me reference things like birthdays and guides I wrote about homelab and self hosting.
The developer of Bookstack Dan Brown has been outstanding in supporting his project on many platforms across the internet. It's not just the amazing look and feel of Bookstack that makes it worth using. Dan has a passion for his project and it easily convinced me to give it a try much like many others several years ago and I have been using ever since.
Check our our interview with Dan here!
If you find Bookstack useful, be sure to give it a star on the Bookstack Github page!