explaingit

triliumnext/trilium

Analysis updated 2026-06-20

35,896TypeScriptAudience · generalComplexity · 3/5Setup · moderate

TLDR

A self-hosted personal knowledge base app where notes live in a flexible tree, link to each other, and scale to 100,000+ entries, runs as a desktop app or on your own server.

Mindmap

mindmap
  root((trilium))
    What it does
      Hierarchical note tree
      Personal knowledge base
      100k notes scale
    Note types
      Rich text
      Mind maps
      Sketches Excalidraw
      Geo maps
    Features
      Full-text search
      Note versioning
      Per-note encryption
      Web clipper
    Deployment
      Desktop Electron
      Self-hosted server
      Device sync
    Audience
      Researchers
      Knowledge workers
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Build a personal wiki with thousands of interlinked notes organized in a deep hierarchy.

USE CASE 2

Set up a self-hosted research database with full-text search, note versioning, and per-note encryption.

USE CASE 3

Create a project knowledge base accessible from all your devices via a self-hosted sync server.

What is it built with?

TypeScriptElectronExcalidraw

How does it compare?

triliumnext/triliumreworkd/agentgptlerna/lerna
Stars35,89636,05336,071
LanguageTypeScriptTypeScriptTypeScript
Setup difficultymoderatehardeasy
Complexity3/53/53/5
Audiencegeneralvibe coderdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Self-hosted sync server requires a server with Node.js or Docker, desktop app is a simple download.

License information was not mentioned in the explanation.

In plain English

Trilium Notes is a free, open-source note-taking application designed for building large personal knowledge bases. Unlike simple note apps, Trilium organizes notes in a hierarchical tree structure where notes can be nested as deeply as you like, and the same note can appear in multiple places in the tree simultaneously. This makes it well suited for people who accumulate thousands of notes over time and need a flexible system for linking ideas together. Notes in Trilium can contain rich formatted text with tables, images, mathematical formulas, and code with syntax highlighting. There are also specialized note types including mind maps, hand-drawn sketches (via Excalidraw integration), relation maps for visualizing connections between notes, and geo maps with location pins. Full-text search and note versioning (keeping a history of every change) are built in. Trilium can be run as a local desktop application using Electron (a technology that packages web apps as desktop programs), or self-hosted on a server and accessed via browser. Notes can be synchronized across devices through a self-hosted sync server, encrypted on a per-note basis for privacy, and selectively published to the public internet. There is also a web clipper browser extension for saving web pages directly into your notes. Someone building a personal wiki, a research database, a journal, or a project knowledge base where notes grow over time and link to each other would use Trilium. The project is written in TypeScript, runs on Electron for desktop use, and can scale comfortably to over 100,000 notes according to the README.

Copy-paste prompts

Prompt 1
I want to self-host Trilium Notes on a VPS. Walk me through installing it with Docker and setting up sync for multiple devices.
Prompt 2
Using Trilium's API, write a script that exports all notes tagged 'project' as a single Markdown file.
Prompt 3
How do I set up per-note encryption in Trilium so that sensitive notes are locked behind a password while others remain accessible?

Frequently asked questions

What is trilium?

A self-hosted personal knowledge base app where notes live in a flexible tree, link to each other, and scale to 100,000+ entries, runs as a desktop app or on your own server.

What language is trilium written in?

Mainly TypeScript. The stack also includes TypeScript, Electron, Excalidraw.

What license does trilium use?

License information was not mentioned in the explanation.

How hard is trilium to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is trilium for?

Mainly general.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Scan in gitsafehub Deploy in gitdeployhub triliumnext on gitmyhub

Verify against the repo before relying on details.