Taking Notes with Joplin
lwn.net
lwn.net
The way it worked was that they stored new/existing notes in an SQLite table with UUIDs. This of course makes it very difficult to use bash tools, other IDEs, etc. to work with your notes after Joplin has ingested them.
Further the related media was renamed "UUID.<related extension>" which were stored in `~/.config/joplin-desktop/resources`.
Compare this to apps like VS Code / Obsidian / Logseq (also open source) which don't mess with your markdown file organization. You can just point them to a root folder and they'll work natively with your markdown files. No syncing required.
- Storage of files in a folder that can be seen by the OS to allow sync by something like syncthing
- Moderately good UI (nice to have: live preview of markdown)
- Core features not behind a paywall (e.g. siyuan can't sync, notenook missing important features)
- Nice to have: push notifications for tasks/reminders
Probably not what you're looking for, but I'm having a wonderful time running a private instance of Mediawiki. It's only accessible to me in my lan (or through my vpn). It's been my private digital garden for a few years now and i like it very much.
The only thing I truly miss is the possibility of pointing a Wikipedia-like app (might as well be the same codebase of the official wikipedia app, but pointing at my private endpoint).
I'm not sure it has all the features Obsidian has (I haven't tried Obsidian) but it has a fairly large number of extensions: https://www.mediawiki.org/wiki/Category:All_extensions
Joplin is essentially an open source version of Evernote and a great alternative for people who enjoyed that style of application.
Well, except for https://joplinapp.org/help/apps/external_text_editor/
This is the real deal breaker for me for evaluating any note-taking tool.
If the Obsidian app dies tomorrow, my notes will be fine.
If Joplin gets abandoned, then I will have to deal with all the imports/exports into a new tool.
Bash tools are really powerful.
One can even take a git (not just GitHub) backup of one's Obsidian notes easily.
With binary files like SQLite, the git backups work, but they don't provide a meaningful diff.
That makes it a hard pass for me.
When I visit the SilverBullet link, I get a wall of text. And at the very top is a warning about versions and a link to migrating your data between versions, which leads to another extensive wall of text with various code and configuration examples.
Many people, even busy tech savvy people, are going to shy away from this.
To be honest, it looks kind of interesting to my inner nerd, but I think I'll stick with my "directory of plaintext Markdown files" that I've moved between apps as they've come and gone.
Instead, there is always either markdown or rich text formatting involved. And there's no ability to disable that.
That always seemed odd to me to force that kind of decision on users.
I can't remember all the little things that happen, which wouldn't happen in a plain text editor, but if you type hyphen-space, then hit enter, the line is deleted and your cursor stays on that line instead of advancing to the next.
It's a trivial example, but things like that happen.
* Markdown and LaTeX working stably out of the box. * Side-by-side view. * (Isolated) File and folder browser in the immediate UI
I originally started with it because it's Open Source and can link to other documents saved in Joplin - I don't actually use that feature though.
Other than that it's fairly sane. Just works, no real bugs so far, and you can export in a variety of different convenient formats; I've come to trust exporting as a single .jex (Joplin Export) file, but MD and HTML are supported.
Right now I've reverted to the good (?) old "plain markdown files in a git-synced repository. Of course it comes with its own set of downsides, but after migrating (and sometimes leaving behind) my notes so many times I like how portable and universal plain-text is.
(I want to give a shout-out to Tiddlywiki. It stands out among the plethora of solutions I've tested, and I still sometimes use it for my mind-maps or designs).
Probably even released some new ToS to scrape all user data for AI training, I imagine.
I've had to be careful to steer clear of all the plugin nonsense that's tempting to dive into as a distraction from actually using the tool, but Obsidian is surprisingly awesome right out of the box.
I use the daily note template tool to generate a structured agenda for each day, which removes the friction that used to keep me from daily journaling and second brain stuff. Now I can't live without it. It's been life-changing for me, as a person previously crippled with ADHD and perpetually living in a state of intense anxiety.
If you have any questions, I'm happy to help out. I was also an Evernote (and Joplin, and...) user for years and was never satisfied until I made a list of my requirements and discovered that Obsidian ticks all the boxes. Haven't turned back since.
1. Google Calendar - this is a pain to set up, but once it's set up you can pull your agenda into a note.
2. Tasks - This allows you to write a query which you can use to consolidate multiple TODO lists into a single note.
3. Homepage - Always keep one note open as a pinned home page.
Combine the 3 and I have a nice dashboard that shows my agenda for the day and all the various TODOs I have peppered through my vault.
Oh, and I've found using a tool like gitwatch really helpful for keeping the repo synced without having to remember to commit.
It obviously wasn't the first note taking app, and it's very much not Free, but the nature of its linking sparked Obsidian and Logseq's growth. I've been a happy paid user since the early days.
The biggest reason I stick with it is that it supports both being E2E encrypted and synchronising, without me having to set anything up. I wouldn't mind running a server, but (unlike many in the comments) I actively don't want my tool to operate on a pile of Markdown documents on the filesystem: because then I need to worry about maintaining those files everywhere I want to access my notes. Roam will automagically drop an encrypted backup on my laptop every day, my regular backup system will take things from there. For day-to-day use, sync is per-block and effectively live.
I read the explination about it being reseved for the title on export but I really didn't find it compelling to break a basic note taking workflow.
Fun Fact: Beside the Joplin App, you can use any other Editor to edit notes (of course after they are encrypted).
(1) Importing notes takes forever, I'm talking hours, even if you're pointing to a local notes folder.
(2) There is no background sync on mobile so every time it's open the app, wait a 10+ seconds to sync, then open the new note. I've found myself keeping important notes on Keep for quick access.
(3) All notes and resources are in a flat folder so if you have a large database filesystems will struggle and break in strange ways. I guess I hit some limits in OneDrive and it can't list all files so I started missing notes. I ended up doing an audit and found a couple dozen things not syncing. Now I'm paranoid I'll lose more notes and commit all changes to a git repo.
I still think there isn't a better alternative in my case and plan to make improvements to address my pain points.
there will be a failsafe implemented for that issue in version 3.3
personally, I recommend using the s3 sync with cloudflare r2, it's faster than onedrive and it's pretty hard to exceed cloudflare's free tier
There is a backup feature exporting all notes to markdown. Is there a way to backup up all notes this way based on a schedule?
That would address the issue with dependency on a database.
All in all, it works fine, no surprises and I've been able to access my notes from many setups and never lost anything.
https://github.com/laurent22/joplin/tree/dev/packages/server
It's sync feature is super seamless though!