Trilium Notes unterstützt Sie mit seinem hierarchischen Dateibaum beim Aufbauen eines eigenen Knowledge-Management-Systems.
Bei Anwendungen, die Notizen, Gedanken, Lesezeichen, Journale und ganze Projekte verwalten, hängt die Auswahl sehr stark vom Bedarf, den Vorlieben und der Arbeitsweise des Nutzers ab. Deshalb gibt es solche Apps sowohl im proprietären als auch im Open-Source-Bereich zuhauf. Dabei reichen die Einsatzszenarien vom Aufzeichnen kurzlebiger Notizen bis hin zum systematischen Aufbau langfristig genutzter Wissensdatenbanken. Technisch gesehen fallen die Anwendungen in die Kategorie der Outliner, die man im Deutschen auch als Gliederungseditoren oder elektronische Zettelkästen bezeichnet.
In diesem Heft haben wir bereits den Outliner Anytype [1] vorgestellt, der funktional nichts auslässt, was irgendwie ins Thema Notizen passt. In eine ähnliche Richtung geht das unter der AGPL 3.0 stehende Trilium Notes [2]. Bei diesem Tool fehlt der ideologische Überbau, der die Entwicklung bei Anytype stark mitbestimmt. Es legt mehr Gewicht darauf, Notizen in jeglicher Form in einer Baumstruktur zu visualisieren, zu verlinken, zu synchronisieren und zu teilen. Allerdings funktionieren das Synchronisieren und das Teilen von Inhalten nur im Zusammenspiel mit der Server-Variante.
Die seit 2017 entwickelte Anwendung bringt zahlreiche Funktionen mit, die Sie dabei unterstützen, Ihre Notizen zu strukturieren und effizient zu bearbeiten. Die Stärke von Trilium liegt in der mächtigen Suchfunktion und den Filtern, mit denen Sie Notizen nach verschiedenen Kriterien wie Datum, Tags oder Kategorien sortieren. Außerdem kommt die Anwendung Entwicklern mit einer guten Einbindung von Quellcode samt Syntaxhervorhebung und der Darstellung von Codeblöcken entgegen. Darüber hinaus können Sie Codenotizen ausführen, um kleine Anwendungen innerhalb von Trilium zu erstellen.
Darreichungsformen
Sie setzen Trilium entweder als Desktop-App für Linux und Windows ein oder als Web-Anwendung, die auf einem Server unter Linux zu Hause oder im Internet läuft. Es gibt zwar eine Desktop-Version für MacOS, die aber nicht offiziell unterstützt wird. Auf der Github-Seite des Projekts finden Sie den Quellcode der Anwendung, ein Binär-Archiv sowie ein Debian-Paket [3]. Alternativ richten Sie Trilium als Flatpak [4] via Flathub ein. Unter Arch Linux nutzen Sie AUR zur Installation, NixOS führt die Anwendung in seinen Paketquellen.
Für Server bietet der Entwickler neben einem Binärpaket auch Docker-Images für AMD64, ARMv6/v7 sowie ARM64 an [5]. Die Server-Variante verfügt über ein mobiles Web-Frontend, Versionen für Android oder iOS suchen Sie allerdings vergebens. Wie Anytype basiert das in Node.js geschriebene Trilium auf Githubs Electron-Framework [6]. Eine weitere Gemeinsamkeit besteht in der Demo-Implementierung, die nach der Installation den Einstieg erleichtert, indem sie die verschiedenen Typen von Notizen und deren Optionen anschaulich darstellt. Eine Funktionsliste hilft zudem, die erweiterten Möglichkeiten von Trilium kennenzulernen [7].
Alles ist eine Notiz
Zunächst sollten Sie sich bewusst machen, dass bei Trilium alles eine Notiz ist. Jede davon kann nicht nur Text aufnehmen, sondern auch Bilder, Videos und Musik. Diese Herangehensweise erlaubt Ihnen, eine Notiz mit einem Bild in andere Notizen zu klonen. Beim hierarchischen Aufbau der Baumstruktur symbolisieren Äste eine Art Ordner, der die untergeordneten Blätter aufnimmt, ohne jedoch tatsächlich selbst ein Ordner zu sein. Bei Bedarf stellen Sie den einzelnen Notizen Icons voran.
Trilium legt großen Wert auf Sicherheit und ermöglicht Ihnen, sensitive Informationen mit einem auf Ihrem Kennwort basierenden Verschlüsselungscode zu schützen. Zusätzlich speichert die Anwendung alle Notizen in einer verschlüsselten Datenbank und sorgt für Offline-Verfügbarkeit, die Sie unabhängig von einer Internet-Verbindung macht.
Installation
Unter Arch Linux, Debian oder NixOS nutzen Sie zum Installieren der Desktop-Anwendung entsprechende Pakete oder Rezepte, per Flatpak von Flathub lässt sich Trilium ebenso problemlos einbinden. Die Server-Variante erstellen Sie direkt per Docker-Image oder via Docker-Compose [8]. Sollten Sie Portainer zur Verwaltung Ihrer Docker-Container verwenden, finden Sie die Anwendung dort unter den Templates. Sind Sie kein Freund von Containern, dann setzen Sie den Server über ein Paket von Github auf [9]. Trifft keine der Optionen Ihren Geschmack und Sie möchten trotzdem nicht auf Synchronisation verzichten, dann stellt der Entwickler gegen ein kleines Entgelt Platz auf einem Projekt-Server zur Verfügung.
Die Webansicht des Servers im Browser ähnelt der Desktop-Ansicht wie ein Ei dem anderen. Nach dem ersten Start vom Server oder Desktop sehen Sie eine Maske mit drei Optionen. Wenn Sie bisher lediglich die Desktop-App installiert haben, gilt für Sie Option 1. Möchten Sie später zusätzlich den Trilium-Server installieren, nutzen Sie beim ersten Start eine der beiden anderen Optionen, je nachdem, ob Sie die Synchronisation vom Server oder vom Desktop aus anstoßen.
Die Bedienoberfläche von Trilium ist zweigeteilt (Abbildung 1). Links in der Seitenleiste sehen Sie die hierarchische Gliederung als bestimmendes Ordnungskriterium der gespeicherten Inhalte. Als weitere Ordnungskriterien dienen Verknüpfungen und Labels. Beim ersten Start offeriert Trilium die bereits erwähnte Demo, die viele Möglichkeiten bezüglich der unterschiedlichen Inhalte und deren Formatierungen vorführt. Es empfiehlt sich, die Demo vorerst als Muster zu behalten.

Abbildung 1: Als Wurzel Ihrer Notizen dient root. Von hier aus bauen Sie hierarchisch den Notizbaum auf.
Selbstverständlich können Sie trotzdem direkt eigene Inhalte erstellen, indem Sie ganz oben auf das Pluszeichen hinter root klicken. Es taucht bei jedem Eintrag auf – egal, ob bei Ästen oder deren Blättern – sobald Sie den Mauszeiger darüber bewegen. Damit erzeugen Sie jeweils eine neue Notiz an der gewünschten Stelle.
Optionen
Im Menü, das Sie durch einen Klick auf das Trilium-Icon oben links erreichen, finden Sie neben einigen fortgeschrittenen Einstellungen die Optionen, eine neue Seite zu öffnen, den Zoom-Faktor zu ändern, die Hilfe anzeigen zu lassen oder die Seite About zu öffnen. Letztere verrät, wo die Anwendung Ihre Daten speichert. Bei der Desktop-Variante liegen sie unter ~/.local/share/trilium-data/.
Ein Klick auf Options stellt die einzelnen Menüpunkte übersichtlich als Kacheln dar (Abbildung 2). Über die erste davon justieren Sie den Zoom-Faktor und das Theme. Neben Light und Dark steht hier das recht attraktive Steel Blue zur Auswahl. Sie können zudem eigene Einstellungen zur verwendeten Schriftart und zur Breite der Inhalte im rechten Block treffen.

Abbildung 2: Die Übersicht ordnet die Optionen als Kacheln an, hinter denen sich die einzelnen Unterpunkte befinden.
Die nächste Kachel bietet einen Überblick über die voreingestellten Tastaturkürzel, die sich gemäß Ihrer Vorlieben anpassen lassen. Bei den Text Notes stellen Sie ein, wie Trilium Überschriften anzeigt und ab wie vielen Überschriften es automatisch ein Inhaltsverzeichnis generiert. In Code Notes geht es um die Darstellung von Code in verschiedenen Programmiersprachen. Bei Bedarf aktivieren Sie hier auch die Vim-Keybindings. Images beherbergt die Einstellungen zu Bildern. Der Zweck von Spellcheck und Password liegt auf der Hand. Unter ETAPI erstellen Sie ein API-Token, falls Sie Trilium in anderen Umgebungen einbinden möchten.
Die Punkte Backup und Sync erfordern etwas Aufmerksamkeit. Bei den Backups legen Sie fest, ob Sie täglich, wöchentlich oder monatlich Sicherungen anlegen möchten. Auf Wunsch erzeugt ein Schalter sofort eine Datensicherung. Daneben können Sie den gesamten Baum oder einzelne Notizen als HTML, Markdown oder OPML exportieren. Die Option zur Synchronisation betrifft Sie nur, falls Sie auch eine Server-Instanz betreiben. Dort geben Sie die Server-Adresse an und testen, ob die Verbindung zustande kommt (Abbildung 3).

Abbildung 3: In der Desktop-Version tragen Sie die Server-Adresse lokal oder über Proxy in der Maske für die Synchronisation ein, speichern sie und testen per Sync test, ob sich der Server erreichen lässt.
Unter Other und Advanced finden Sie Einstellungen zur Suchmaschine, zum endgültigen Löschen von zum Entfernen markierten Einträgen sowie zur Datenbank. Dort definieren Sie außerdem, in welchen Intervallen Trilium eine Revision erstellt, also einen Snapshot einer Notiz. Die Funktion lässt sich global deaktivieren und für einzelne Notizen über das Label disableVersioning aus der Bedienleiste abstellen.
Funktionen
Das Löschen von Inhalten erfolgt in Trilium in zwei Schritten. Mit Delete aus dem Kontextmenü jedes Eintrags entfernen Sie die Notiz nicht wirklich, sondern merken sie lediglich dafür vor. In den Einstellungen definieren Sie, nach wie vielen Sekunden der Eintrag dann endgültig verschwindet. Bis dahin können Sie ihn über den Menüpunkt Recent changes wiederherstellen. Sie erreichen die entsprechende Ansicht über das Uhrensymbol links in der Seitenleiste (Abbildung 4). Über einen Klick auf den Schalter Erase deleted notes now oben rechts entfernen Sie alle zum Löschen vorgemerkten Notizen.

Abbildung 4: Die Ansicht Recent changes liefert einen Überblick der letzten Änderungen und erlaubt zudem das Entfernen von zum Löschen vorgesehenen Inhalten.
Über die weiteren Symbole in der Seitenleiste öffnen Sie eine neue Notiz, starten eine Suche, rufen eine Mindmap Ihrer Notizen auf oder öffnen einen Kalender. Über Letzteren springen Sie gegebenenfalls zu den Journaleinträgen bestimmter Tage. Am unteren Ende finden Sie Schalter, um eine geschützte Sitzung zu starten und den Stand der Synchronisation zu ermitteln. Neben einfachen Notizen und dem Journal unterstützt Trilium unter anderem mathematische Ausdrücke. Außerdem erlaubt es das Erzeugen von Diagrammen aus textbasierten Anweisungen über das Javascript-Werkzeug Mermaid (Abbildung 5). Über Canvas note rufen Sie eine auf der Bibliothek Excalidraw [10] basierende Leinwand zum Erstellen von Skizzen und Freihandzeichnungen auf.
Die mächtige globale Suchfunktion in Trilium deckt Volltext, Titel, Relationen und Hashtags ab (Abbildung 6). Daneben stöbern Sie bei Bedarf auch in einzelnen Notizen. Häufig genutzte Suchvorgänge lassen sich als Notiz speichern.

Abbildung 6: Die Volltext-Suchfunktion enthält viele Optionen zum Eingrenzen der Ergebnisse. Häufig benutzte oder komplexe Suchen lassen sich als Notiz speichern und wiederverwenden.
Notizen verwalten
Wenn Sie eine neue Notiz öffnen, zeigt die Anwendung sie rechts als leere Notiz an, deren Titel Sie zunächst anpassen sollten. Trilium unterstützt Tabs, sodass Sie mehrere Notizen gleichzeitig öffnen können. Alternativ behalten Sie mehrere Notizen parallel im Blick, indem Sie ganz rechts oben den Schalter zum Teilen des rechten Fensters klicken. Zum Formatieren von Inhalten markieren Sie sie, woraufhin eine Formatierungsleiste erscheint. Für weitere Optionen klicken Sie auf das Block-Icon am Beginn des Texts.
Unterhalb des Titels gibt es eine Icon-Leiste sowie eine Launcherbar genannte Schalterleiste, über die Sie die Eigenschaften der Notiz definieren. Unter Basic Properties legen Sie den Typ der Notiz fest, wobei Text als Standard dient. Der noch experimentelle Typ Web View erlaubt, Webseiten in Notizen einzubauen. Die weiteren Schalter erlauben, die Notiz zu schützen, den Editiermodus einzustellen, ein Lesezeichen zu erstellen und die Notiz zu teilen (Abbildung 7).

Abbildung 7: Wenn der Trilium-Server installiert und der Schalter Shared aktiviert ist, erscheint eine URL zum Teilen von Notizen.
Bei sehr großen Dateibäumen erweist es sich zur besseren Übersicht als hilfreich, sich nur die gerade bearbeiteten Notizen anzeigen zu lassen. Dafür sorgt die Funktion Hoisting aus dem Kontextmenü. Ein Klick auf das Info-Symbol in der Icon-Leiste fördert nähere Informationen zur jeweils gewählten Notiz zutage (Abbildung 8).

Abbildung 8: Note info zeigt die ID, das Erstell- und Änderungsdatum, den Typ und die Größe einer Notiz an. Zudem sehen Sie eventuelle Verlinkungen.
Das Teilen von Notizen funktioniert nur, wenn Sie einen Trilium-Server eingebunden haben. Dann können Sie in allen Instanzen Notizen in Form einer Browser-URL teilen (in Abbildung 7 unterhalb der Schalterleiste zu sehen). Diese Ansicht lässt sich jedoch nicht editieren, und auch ein gemeinsames Bearbeiten von Notizen plant der Entwickler bislang nicht.
Über das Kontextmenü in der Seitenleiste oder per Drag & Drop verschieben Sie Notizen. Auch das Klonen und das Referenzieren untereinander funktionieren. Die Import-Funktion von Trilium akzeptiert neben den üblichen Formaten Evernotes proprietäres ENEX und Microsofts Onenote (Abbildung 9). Für Letzteres braucht es allerdings einige Vorbereitungen [11]. Verzeichnisse müssen Sie vor dem Import als ZIP-Archiv verpacken. Einzelne Dateien binden Sie per Drag & Drop ein, dasselbe gilt für Bilder.

Abbildung 9: Der Import von Daten verschiedener Formate lässt sich durch Optionen steuern. So lassen sich etwa diverse Archivformate einlesen.
Erweiterungen
Mithilfe der Browser-Erweiterung Trilium Web Clipper [12], die für Chrome sowie Firefox und darauf basierende Browser bereitsteht, integrieren Sie Inhalte zudem über den Webbrowser. Damit binden Sie Bilder, Texte, ganze Webseiten oder alle geöffneten Tabs über das Symbol der Erweiterung oder das Kontextmenü des Browsers ein. Die derart gespeicherten Inhalte legt die Anwendung in der Tagesansicht des Journals ab. Alternativ erstellen Sie eine neue Notiz mit dem Namen clipperinbox für die Inhalte.
Eine Android-Version schließt der Entwickler von Trilium Notes aus, und die Community zeigt bisher ebenfalls keine Bestrebungen in dieser Richtung. Dafür bietet die Server-Variante aber ein Web-Frontend, das die wichtigsten Funktionen abbildet [13]. Damit haben wir bisher lediglich die grundlegenden Funktionen abgedeckt. Im Kontextmenü und hinter diversen Schaltern stecken viele weitere fortgeschrittene Optionen, die den Rahmen des Artikels sprengen würden. Alle Optionen beschreibt die ausführliche Dokumentation im Wiki [14].
Zum Schluss soll der Hinweis nicht fehlen, dass Sie Trilium mit vielen Erweiterungen der Community ausstatten können. Die auf Github als awesome trilium vorliegenden Addons versprechen unter anderem Migrationswerkzeuge für einige andere Outliner, zusätzliche Themes, Widgets sowie CSS-Snippets und Skripte [15]. Mit den eingebauten Funktionen und diesen Erweiterungen muss sich Trilium nicht vor den Platzhirschen Obsidian oder Evernote verstecken.
Fazit und Ausblick
Neben den vielen beschriebenen Vorzügen gibt es bei Trilium Notes durchaus auch einige Nachteile. Zunächst einmal spricht das Tool mangels einer deutschen Lokalisierung derzeit durchgehend Englisch. Außerdem fällt die Lernkurve für neue Benutzer relativ steil aus. Das mildert sich aber dadurch ab, dass Sie sofort loslegen können und die erweiterten Funktionen dann nach und nach über die vorinstallierte Demo oder die Dokumentation erkunden.
Kollaboratives Arbeiten bleibt jedoch grundsätzlich außen vor, Trilium ist eine reine Personal Knowledge Base. Ebenso wenig plant der Entwickler Multi-User-Support oder offizielle mobile Apps für Android oder iOS. Trotzdem präsentiert sich Trilium als rundum solider Outliner mit einem bisher kaum gesehenen Angebot an Funktionen. Für Entwickler interessant: Sie können die Anwendung auf einfache Art über eine Skript-API erweitern.
Wir haben uns Trilium auf einem PC, einem Notebook, via Smartphone und im Server-Betrieb angesehen. Dabei funktionierte alles tadellos, sowohl in den einzelnen Instanzen als auch bei der blitzschnellen Synchronisation. Das Web-Frontend in Android erscheint nicht unbedingt bequem, genügt jedoch für Notizen von unterwegs aus.
Beim Autor hat Trilium gute Chancen, das seit vielen Jahren verwendete Zim abzulösen. Für einfache Notizen eigenen sich andere Anwendungen zwar besser, aber kaum eine erweist sich als leistungsfähiger und flexibler als Trilium. Am Ende nicht ganz unwichtig: Auch das Design weiß zu gefallen. (csi/jlu)
Glossar
-
OPML
-
Outline Processor Markup Language. Ein XML-Format zum Austausch von strukturierten Informationen, wie beispielsweise hierarchisch gegliederten Texten.
Infos
-
Anytype: https://anytype.io
-
Trilium: https://github.com/zadam/trilium
-
Trilium-Pakete: https://github.com/zadam/trilium/releases/tag/v0.60.4
-
Trilium-Flatpak: https://flathub.org/apps/com.github.zadam.trilium
-
Trilium-Server: https://github.com/zadam/trilium/pkgs/container/trilium
-
Electron: https://de.wikipedia.org/wiki/Electron_(Framework)
-
Funktionsliste: https://github.com/zadam/trilium#-features
-
Trilium mit Docker: https://github.com/zadam/trilium/wiki/Docker-server-installation
-
Trilium-Server als Paket: https://github.com/zadam/trilium/wiki/Packaged-server-installation
-
Excalidraw: https://libraries.excalidraw.com/?theme=light&sort=default
-
Web Clipper: https://github.com/zadam/trilium/wiki/Web-clipper
-
Web-Frontend : https://github.com/zadam/trilium/wiki/Mobile-frontend
-
Trilium-Dokumentation: https://github.com/zadam/trilium/wiki
-
Trilium-Erweiterungen: https://github.com/Nriver/awesome-trilium






