DEV Community

selfhosting.sh
selfhosting.sh

Posted on • Originally published at selfhosting.sh

Note Taking

Quick Picks

Use Case Best Choice Why
Team documentation Outline Real-time collaboration, modern UI, fast search
Simple team wiki BookStack Structured hierarchy, built-in auth, easiest setup
Developer docs Wiki.js Git sync, Markdown + WYSIWYG, diagram support
Personal knowledge base Trilium Notes Hierarchical notes, relation maps, note cloning
Note sync across devices Joplin Server Mobile apps, E2EE, Markdown, familiar notebook structure
Block-based editing SiYuan WYSIWYG blocks, bidirectional links, database views
Obsidian users Obsidian LiveSync Self-hosted sync for Obsidian vaults via CouchDB
Full Notion replacement AppFlowy Docs + databases (table, kanban, calendar)
Docs + whiteboards AFFiNE Documents and infinite canvas in one app

The Full Ranking

1. Outline — Best for Team Documentation

Outline is the most polished self-hosted knowledge base for teams. The Markdown editor with slash commands is fast and fluid. Real-time collaboration lets multiple people edit simultaneously. Collections organize content logically. Search is fast and accurate.

The one friction point: Outline requires an external authentication provider (OIDC, Google, Slack). No built-in username/password. If your org already runs an identity provider, this is a non-issue. If not, consider BookStack instead.

Pros:

  • Real-time collaborative editing
  • Fast, modern UI with slash commands
  • Comprehensive REST API
  • Clean reading experience
  • Active development with consistent releases

Cons:

  • No built-in auth (requires OIDC/OAuth provider)
  • No database views (no tables, kanbans)
  • Requires Redis in addition to PostgreSQL

Best for: Teams with an identity provider that want a Notion-like documentation experience.

[Read our full guide: How to Self-Host Outline]

2. BookStack — Best Simple Wiki

BookStack is the easiest wiki to set up and use. Shelves → Books → Chapters → Pages provides intuitive navigation. Built-in email/password auth means no external dependencies. WYSIWYG editor, PDF export, and granular permissions per book/chapter/page.

Pros:

  • Simplest setup (two containers, built-in auth)
  • Intuitive hierarchical structure
  • Built-in PDF export
  • Granular role-based permissions
  • Consistent solo developer with reliable releases

Cons:

  • No real-time collaboration (last-save-wins)
  • No database views
  • Less modern UI than Outline

Best for: Small to medium teams wanting a well-organized wiki without complexity.

[Read our full guide: How to Self-Host BookStack]

3. Wiki.js — Best for Developer Documentation

Wiki.js stands out with Git-based content sync — all pages push to a Git repository automatically. Three editor types (Markdown, WYSIWYG, HTML) serve different team members. Built-in Mermaid and PlantUML diagram support makes it ideal for technical documentation.

Pros:

  • Git sync for version control and backup
  • Multiple editor types
  • Built-in diagram rendering (Mermaid, PlantUML)
  • Configurable search backends (PostgreSQL, Elasticsearch)
  • Built-in authentication

Cons:

  • No real-time collaboration
  • v3.0 rewrite in progress (v2.x is stable but development has slowed)
  • Less polished than Outline for reading experience

Best for: Technical teams that want Git-integrated documentation with diagram support.

[Read our full guide: How to Self-Host Wiki.js]

4. Trilium Notes — Best Personal Knowledge Base

Trilium is the most powerful personal knowledge management tool. Hierarchical notes with deep nesting, note cloning (same note in multiple locations without duplication), visual relation maps, and a built-in scripting engine for custom workflows. Everything in a single SQLite database — no external services required.

Pros:

  • Note cloning (unique feature — same note in multiple locations)
  • Relation maps for visualizing connections
  • Built-in JavaScript scripting engine
  • Single container, no external database
  • Syncs between server and desktop client

Cons:

  • No native mobile app (web UI only)
  • UI is functional but not modern
  • Community fork (TriliumNext) — original project unmaintained
  • Single-user focused

Best for: Individuals building interconnected personal knowledge bases.

[Read our full guide: How to Self-Host Trilium Notes]

5. Joplin Server — Best for Note Sync

Joplin Server is the best self-hosted option for syncing notes across devices. The Joplin client apps (desktop + mobile) are solid, Markdown editing is clean, and end-to-end encryption ensures privacy. Notebooks, tags, and to-do lists provide familiar organization.

Pros:

  • Excellent native mobile apps (iOS and Android)
  • End-to-end encryption
  • Markdown-based notes
  • Multi-user support with storage quotas
  • Evernote import tool
  • Web clipper

Cons:

  • Server is primarily a sync backend (limited web UI)
  • No real-time collaboration
  • Desktop app is Electron (heavier than native)

Best for: Individuals and families who want Markdown notes synced across all devices with E2EE.

[Read our full guide: How to Self-Host Joplin Server]

6. SiYuan — Best Block Editor

SiYuan offers the most powerful WYSIWYG block editor in the self-hosted space. Block references, block embedding, database views, bidirectional links, and a graph view — all without needing plugins. The Docker server provides web access from any device.

Pros:

  • Native block references and embedding (most powerful implementation)
  • WYSIWYG editing (not Markdown source)
  • Built-in database views
  • Graph view for visualizing connections
  • S3/WebDAV sync built in
  • Active development with frequent updates

Cons:

  • Custom storage format (not plain Markdown)
  • Community primarily Chinese-speaking
  • Learning curve for block-based concepts
  • Higher memory usage with large workspaces

Best for: Users who want Obsidian-like features with a WYSIWYG editor.

[Read our full guide: How to Self-Host SiYuan]

7. Obsidian + LiveSync — Best for Obsidian Users

If you're already using Obsidian (or plan to), self-hosted sync via CouchDB + the LiveSync plugin replaces the $4/month Obsidian Sync subscription. Your notes stay as plain Markdown files. The plugin ecosystem (1,500+) is unmatched.

Pros:

  • Plain Markdown files (maximum portability)
  • Massive plugin ecosystem (1,500+)
  • Great mobile apps
  • Large, active community
  • E2EE support in LiveSync

Cons:

  • Obsidian itself is not open source (free for personal use)
  • Sync setup is more complex (CouchDB + plugin configuration)
  • CORS configuration can be tricky

Best for: Existing or prospective Obsidian users who want self-hosted sync.

[Read our full guide: How to Self-Host Obsidian Sync]

8. AppFlowy — Best Full Notion Clone

AppFlowy covers the widest range of Notion features: documents, databases (table, kanban, calendar, grid), and workspace collaboration. Native apps sync through self-hosted AppFlowy Cloud. The most complete Notion replacement, though with a complex self-hosted deployment.

Pros:

  • Most Notion-like feature set (docs + databases)
  • Native desktop and mobile apps
  • Real-time collaboration
  • Offline-first with sync
  • Active development, well-funded

Cons:

  • Complex self-hosted stack (5+ services)
  • High resource requirements (4 GB+ RAM)
  • Still maturing — some rough edges

Best for: Teams that need Notion's database features (kanban, calendar, tables) self-hosted.

[Read our full guide: How to Self-Host AppFlowy]

9. AFFiNE — Best for Visual Thinkers

AFFiNE uniquely combines documents and whiteboards. Any page can switch between document mode (Notion-like editing) and whiteboard mode (infinite canvas with shapes, connectors, freeform drawing). Still in active development with beta-quality rough edges.

Pros:

  • Documents + whiteboards in one tool (unique)
  • Modern, attractive UI
  • Real-time collaboration
  • Active development, ambitious roadmap

Cons:

  • Pre-1.0 — expect bugs and breaking changes
  • Limited mobile support
  • Self-hosting documentation lags behind cloud version
  • Resource-intensive (2-3 GB RAM)

Best for: Visual thinkers who want documents and whiteboards together, willing to tolerate beta software.

[Read our full guide: How to Self-Host AFFiNE]

Full Comparison Table

Feature Outline BookStack Wiki.js Trilium Joplin SiYuan Obsidian AppFlowy AFFiNE
Real-time collab Yes No No No No No No Yes Yes
Built-in auth No Yes Yes Yes Yes Yes N/A GoTrue Yes
Mobile apps PWA Web Web Web Native Native Native Native Web
Database views No No No No No Yes Plugin Yes Yes
Whiteboards No No No No No No Plugin No Yes
Git sync No No Yes No No No No No No
E2EE No No No Password Yes Yes Plugin No No
RAM (full stack) ~500 MB ~300 MB ~400 MB ~100 MB ~400 MB ~200 MB ~100 MB 2-4 GB 2-3 GB
Containers needed 3 2 2 1 2 1 1 5+ 3+
License BSL 1.1 MIT AGPL AGPL AGPL AGPL Proprietary AGPL AGPL

How We Evaluated

We evaluated each app on: editing experience, collaboration features, organizational structure, deployment complexity, resource requirements, mobile support, community size, development momentum, and long-term sustainability. We weighted practical usability and deployment simplicity highest, as these determine whether a tool actually gets adopted.

Frequently Asked Questions

Can I sync notes across multiple devices?

Yes. Outline, BookStack, Wiki.js, and SiYuan are server-based — they sync automatically because all devices access the same server. Joplin uses Joplin Server or WebDAV for sync. Obsidian uses LiveSync (CouchDB) or self-hosted Obsidian Sync. Trilium is server-based with an optional desktop app that syncs via its own protocol. For reliable multi-device sync, server-based tools (Outline, BookStack) are simplest.

Which note app is best for Markdown?

Obsidian and SiYuan are the strongest Markdown-first tools. Both store notes as plain .md files, support wikilinks, backlinks, and graph views. Joplin also uses Markdown but stores notes in a database rather than plain files. Outline uses Markdown internally but presents a rich-text editor. BookStack and Wiki.js use rich-text editors with Markdown support as an option, not the default.

Can I import from Notion?

Yes. Notion exports to Markdown, which all tools on this list can import. Outline has the smoothest Notion import — it handles Notion's export format including nested pages and databases. BookStack can import Markdown files. AFFiNE and AppFlowy both position themselves as Notion alternatives and support Notion imports. The quality of import varies — complex Notion databases may need manual cleanup.

How much storage do note-taking apps need?

Very little for text-only notes. A library of 10,000 notes uses roughly 50-200 MB of database storage. Storage grows when you embed images, PDFs, or attachments. BookStack and Wiki.js store uploads on disk alongside the database. Outline uses S3-compatible storage for files. Budget 1-5 GB for a personal knowledge base with moderate media attachments. The database itself (PostgreSQL, MySQL, SQLite) rarely exceeds 500 MB even for large note collections.

Is Obsidian really self-hosted?

Obsidian itself is a local desktop/mobile app — not a server application. What you self-host is the sync layer: either Obsidian LiveSync (CouchDB-based), a WebDAV server, or Syncthing. Your notes are Markdown files stored on your devices. The sync server just ensures they are the same everywhere. This is different from Outline or BookStack, where the server IS the application.

Can multiple people collaborate in real-time?

Outline offers the best real-time collaboration — multiple users can edit the same document simultaneously (like Google Docs). BookStack supports concurrent editing with locking. Wiki.js has basic concurrent editing. Trilium, Joplin, and SiYuan are designed for single-user use — they support sharing and team access but not real-time co-editing. For team wikis, Outline or BookStack are the right choices.

Related

Top comments (0)