← Back to context

Comment by ezst

21 hours ago

I went deep into to the PKMS rabbit hole a year and a half ago, benchmarked Obsidian and many many others, and settled with Trilium¹ which I can only highly recommend. It addresses all the hosting/deployment requirements of OP² without the quirky workarounds mentioned here (syncthing & al), and makes the kind of "lifestyle scripting" this article about very simple and straightforward.

In my mind and experience, Trilium has a very unique and extensible model that lends itself to "growing with your PKMS": notes is the atom of information, attributes can be used to manage notes as structured and relational data, templates and inheritance provide structure and consistency at scale.

Trilium may not look like much on the surface, but it is incredibly capable while being approachable. Give it a serious try.

¹: https://github.com/TriliumNext/Notes/

²: you can use Trilium local-first/only, or cloud-only, or hybrid. It has its own sync protocol, you just point your instance to a server to sync with, and now you have a master-master replication. All my notes are available offline so I can keep working in-flight, notes shared with others are available via web whether I'm online or not, and I can edit my notes on the web where I don't need offline persistence. All of that is built-in/native to Trilium.

Also, Trilium don't have mobile app which is very important for having notes available 24/7. Browser version don't allow offline access and not as convenient as an app

Trillium looks great! I'm curious if it has an outliner mode or something similar? I currently use logseq and the two features I love are how each bullet/block is its own thing that can be cross-referenced and embedded in other blocks and pages, and that my workflow is essentially to have daily journal pages I dump everything into and tag and references/crossreferences are automatically handled and linked to build out a network of things.

I've noticed that trillium has hierarchical notes; is there a view to look at an item higher on the tree and have it also have the contents of all its children?

  • > I've noticed that trillium has hierarchical notes; is there a view to look at an item higher on the tree and have it also have the contents of all its children?

    You are right that the "atom" of content is the block in an outliner and the Note in Trilium. If you can tolerate⁰ the coarser-granularity, you can make Trilium behave pretty closely to an outliner: notes can be embedded within notes, either manually, or via the "Book" note-type¹ (that essentially renders a tree as embedded notes), hoisting² should be a familiar concept then.

    ⁰: when researching the topic, I immediately fell in love with outliners, thinking I would never go back to a note-based approach like Joplin which I was using then, but here I am, promoting a note-based solution. Metadata/tags at block level is not something I could get the hang of (I know how to manage collections of notes at scale, but not collections of blocks). ¹: https://triliumnext.github.io/Docs/Wiki/book-note.html ²: https://triliumnext.github.io/Docs/Wiki/note-hoisting.html

    • Book is exactly what I was thinking of!

      I think my only other question is around my preferred "Daily Journal" workflow and unreferenced tags

      On one hand I feel some surprise that you're noting a distinction between metadata/tags for collections of notes vs collections of blocks. On the other hand, it's a bit of a peeve of mine that there's a distinction between "pages" and "blocks" in logseq when it comes to linking & referencing.

      1 reply →

I think trillium is stashing the notes in a database. Certainly it thinks there is a migration step needed to move files around.

The everything markdown feature of obsidian is the dominant one. I can edit the files in emacs when I want to and the sync sorts it out just fine. They're stashed in a fossil repo by one of the machines as a backup because I'm paranoid and that also works fine because it's all ascii files.

  • Trilium works alongside a SQLite DB. It backs-up your db.sqlite on a regular basis, lets you create manual backups, version-controls each and every note with checkpoints, supports full-encryption, and as soon as you set-up sync between clients/servers, you practically end-up with master-master replicas of your entire notes collection (I have my notes replicated at all time on 3 devices or more). All of this are native, supported features and transparent for the end-user (no offloading to a VCS, no scripting, etc).

    Trilium also lets you import/export your whole database as folders of markdown files if you are really into that, I just don't see the point: this is free open-source software, there is no vendor lock-in and no reason to dumb-down the storage layer to text files. But to each their own :-)