BookStack vs Trilium: Which to Self-Host?

Quick Verdict

BookStack is the better choice for team documentation, wikis, and structured knowledge bases. TriliumNext is better for personal knowledge management with interconnected notes, cloning, and a hierarchical tree. They solve different problems — pick based on whether your primary use is team docs or personal notes.

Overview

BookStack organizes content into shelves, books, chapters, and pages — a familiar library metaphor that works well for documentation. It’s a PHP/Laravel application with a WYSIWYG editor, RBAC permissions, and multi-user support.

TriliumNext (community fork of the now-unmaintained original Trilium) is a personal knowledge base built around a note tree. Notes can be cloned (appear in multiple places), linked, and organized with attributes. It uses embedded SQLite and runs as a single container.

Feature Comparison

FeatureBookStackTriliumNext
ArchitecturePHP/Laravel + MySQLNode.js + SQLite
OrganizationShelves → Books → Chapters → PagesHierarchical note tree
EditorWYSIWYG + MarkdownWYSIWYG + code notes
Multi-userYes (RBAC permissions)Single-user (with shared access)
SearchFull-textFull-text + attribute search
Note cloningNoYes (note in multiple locations)
APIREST APIREST API + ETAPI
Desktop syncNo (web-only)Yes (desktop client + sync)
Note linkingWiki-style linksRelation maps + backlinks
Code highlightingYesYes (dedicated code notes)
DrawingBuilt-in diagramsCanvas notes
Docker services2 (app + MariaDB)1 (single container)
RAM usage200–400 MB150–300 MB
AuthenticationBuilt-in + LDAP + SAML + OIDCPassword (serves as encryption key)

Installation Complexity

BookStack needs two containers — the application and MariaDB. You need to generate an APP_KEY before first run and configure the database connection. Setup is straightforward if you’ve deployed Laravel apps before.

TriliumNext is the simpler deployment. Single container, single volume, no external database. Set a password on first launch and you’re running. The password also serves as the database encryption key, so don’t lose it.

TriliumNext wins on deployment simplicity. BookStack wins on enterprise readiness.

Performance and Resource Usage

TriliumNext is lighter — 150–300 MB RAM for the single container. Embedded SQLite means no database overhead. It’s efficient for single-user workloads.

BookStack needs 200–400 MB for the PHP app plus 200–300 MB for MariaDB. Total footprint is higher but still modest. It handles multi-user concurrent access well.

Community and Support

BookStack has a large, active community with excellent documentation. The lead developer (Dan Brown) maintains a clear roadmap and consistent release schedule. It’s one of the most well-maintained self-hosted documentation platforms.

TriliumNext is a community fork created after the original Trilium developer stepped back. The community is smaller but committed to maintaining the project. Development pace is steady with regular releases.

Use Cases

Choose BookStack If…

  • You need team documentation with role-based access
  • You want a familiar book/chapter/page organization
  • You need SSO integration (LDAP, SAML, OIDC)
  • You want a polished WYSIWYG editor
  • You need audit logging and revision history for compliance

Choose TriliumNext If…

  • You need a personal knowledge management system
  • You want note cloning (same note in multiple locations)
  • You need desktop sync between server and local client
  • You think in graphs and connections rather than hierarchies
  • You want encrypted storage (password-based)

Final Verdict

BookStack and TriliumNext serve fundamentally different use cases. BookStack is documentation — structured, shared, permissioned. TriliumNext is a personal knowledge base — interconnected, flexible, private.

If you need to document processes for a team, BookStack is the clear choice. If you want a “second brain” where notes connect and clone across topics, TriliumNext is purpose-built for that.

Many users run both — BookStack for team docs, TriliumNext for personal notes.