this post was submitted on 27 Jul 2024
139 points (91.6% liked)

Selfhosted

40676 readers
541 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

TLDR: After the fantastic Trilium Notes entered maintenance mode, a significant group of community members (including myself) have committed to moving the project forward.
🎁 An official backward-compatible TriliumNext Notes release should be available soon!

If you haven't heard of Trilium Notes (Or TriliumNext Notes), you should check it out. For an example of what TriliumNotes looks like, you can check out the slightly outdated screenshot tour. Trilium Notes is IMO the best truly open, and truly libre note taking software that exists.

Originally coming from OneNote, I've tried many...many alternatives, and it has been a joy switching to TriliumNotes.

🍻 This free (gratis), open-source, self-hosted, personal wiki/note software offers all the following with no nags, no paywall and no restricted features - you get all the goodies up front!

  • Note cloning (notes can exist in multiple locations at once)
  • Interactive note visualization maps
  • Various note types (canvas, mermaid diagrams, web view, relation map, code, etc)
  • Various bulk folder import and export options (HTML, Markdown, Text)
  • Revision history (and recent changes view)
  • Scripting (Very powerful - automate tagging, deletion, etc)
  • Full documented ETAPI for external scripting or development
  • Browser extension for web clipping
  • Fast fuzzy search & advanced search (search by tags, parent note, size, etc)
  • Sharing notes with a public url with a simple toggle
  • Encrypted notes
  • Extensive and versatile note tagging (inheritable tags, relationship tags, etc)
  • Note note tabs, zen mode, multi-note views
  • Note archiving
  • Note linking and embedding (embed notes inside other notes)
  • Full wysiwyg editor (with markdown and math syntax completion) - external editors supported
  • Unlimited note nesting
  • Daily note journaling feature
  • Extendable with widgets, custom plugins, themes, scripts, etc
  • Customizable keyboard shortcuts (and VIM keyboard bindings)
  • Automatic note syncing to server (or other clients that are setup in 'server' mode)
  • Automatic backups
  • Cross platform (Windows, Mac, Linux, Flathub, Docker - very simple compose)
  • Good documentation, Matrix support chat, Github Discussion forums, awesome lists

The main downsides are:

  • The mobile (android) app currently is only for composing notes (not for reading other notes on the server). You must use the mobile browser version (which works quite well) to get a 'fuller' experience. (The new TriliumNext project does plan to improve the mobile experience).
  • Only one user per server is currently supported (this is a high priority for the TriliumNext team)
  • Some people don't like database note taking software since they prefer files in a directory, but this isn't an issue for me since I can automate the export of TriliumNotes (using the api) and save the notes to Nextcloud or my local file system for easy viewing.

πŸ“’ If this project interests you, you can follow the progress on github and get involved if you would like to see this project flourish! There are teams to help with development, issue triaging, documentation, testing, etc.

πŸ—³οΈ If you'd like to vote on the new TriliumNext logo, you can do that too!

Happy Note Taking!)

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 57 points 4 months ago (3 children)

Database storage for notes is a non-starter for me.

[–] dogsnest 19 points 4 months ago

I'm glad I barely skimmed the wall to find this first post.
Thanks for the timesaving.

[–] homegrowntechie 11 points 4 months ago (7 children)

I've never quite understood why this is such a non-starter for most people. I just simply set up a script to export my Trilium notes to Nextcloud as flat files so I can still read my notes anywhere even without a Trilium client. Trilium also allows you to edit the notes with an external editor, and then you can just re-import the note to update the note in Trilium.

[–] [email protected] 22 points 4 months ago (1 children)

It's a non-starter for me because I sync my notes, and sometimes a subset of my notes, to multiple devices and multiple programs. For instance, I might use Obsidian, Vim and tasks.md to access the same repository, with all the documents synced between my desktop and server, and a subset synced to my phone. I also have various scripts to capture data from other sources and write it out as markdown files. Trying to sync all of this to a database that is then further synced around seems overly complicated to say the least, and would basically just be using Trillium as a file store, which I've already got.

I've also be burnt by various export/import systems either losing information or storing it in a incompatible way.

[–] homegrowntechie 12 points 4 months ago

Thanks for the clear explanation, that makes sense to me. For me, I just use Trilium for all of the above, so it doesn't affect me, but I could see how it would matter for those using it in the way you are πŸ‘

[–] [email protected] 19 points 4 months ago (1 children)

The summed up version of your comment is that you also go out of your way to work around the database issue.

[–] homegrowntechie 3 points 4 months ago* (last edited 4 months ago)

I can see your point, I should have clarified that I never use an external editor myself to edit the notes, I was just saying that you could do that if you needed to. I only export to Nextcloud so I can view it there just as I would have to save to Nextcloud if I was using Obsidian or some other file-based note-taking app.

[–] [email protected] 19 points 4 months ago

Some people have different requirements. Some have been burned by a program becoming obsolete or migrating between programs and finding out getting their data was (at least initially) beyond their capabilities. Some don’t see the tradeoff of having true rich text as worth it.

I’m not in that camp, but I can see the appeal.

[–] rtxn 14 points 4 months ago* (last edited 4 months ago)

I just simply set up a script to export my Trilium notes

edit the notes with an external editor, and then you can just re-import the note

Those two lines right there.

I value interoperability between software. Using a container format to store plaintext files and metadata introduces an XKCD 927 situation where it's just another reinvention of the wheel that requires additional software support or a whole other workflow for no real benefit. Why is it necessary, for example, to store plaintext data and the related hierarchical structure in a container format when the same feature is already present in the filesystem with files and directories? It adds unnecessary complexity, roadblocks, and points of failure.

I'm using QOwnNotes at the moment. If I want to edit a note, for example, using neovim through SSH, all I need to do is navigate to the markdown file and open it. No scripts, no export/import. Only text files, and that is all it ever needs to be.

[–] asap 7 points 4 months ago* (last edited 4 months ago)

It makes for very handy use cases where other applications can work on the same data. This could be easily adding content into your notes (without needing an API to do so), using external editors for working on certain aspects of your notes, or even just the super handy convenience of having everything in one directory structure.

My Obsidian notes are right inside the same folders as the PDFs and other resources they refer to. I don't have to have a tree structure inside my notes and then the same tree structure in my hard drive or Dropbox or wherever with all my other files.

I was a 10+ year Evernote veteran, and I couldn't go back to the single DB style like Evernote or Trillium. I wish there was an open source competitor to Obsidian, but alas not yet.

And as @[email protected] rightly points out, people (me!) have been burned in the past by a program becoming obsolete and having your files stuck in some proprietary format. Plain files right in a folder on the disk is the way to go.

[–] [email protected] 5 points 4 months ago

Why would I want to do the extra work when there are other options available that just don't store the notes in a db?

[–] [email protected] 1 points 4 months ago (1 children)

Does your script handle bi-directional sync or one-way only?

[–] homegrowntechie 0 points 4 months ago

Just one way since I have never found the need to edit the notes in Nextcloud

[–] [email protected] 5 points 4 months ago (1 children)

Yeah, there are better options that sync flat file notes via plain old WebDAV.

[–] [email protected] 9 points 4 months ago

Most of those options are the traditional text-based, "page" based type notes. There really aren't that many options in terms of competition to something like OneNote though, where the "page" isnt a fixed size, and supports more than just plain text such as handwritten text, or images, or stuff that doesnt necessarily fit in a neat little square.

Dont get me wrong, there are some fantastic note-taking apps out there that are dead simple to use, but if you're looking specifically for something like OneNote, then again, super limited options.