I tested dozens of note-taking apps over the years. Free, paid, everything. None of them worked for me, so I built my own.
The Problem
I take a lot of notes. Technical documentation, project planning, random ideas, all of it goes into whatever note-taking app I'm using at the time. Over the years, I've used most of them.
Notion was slow. Noticeably slow. Every click had a delay. Its offline support barely worked, and syncing afterward never felt reliable.
Evernote was fine in 2015. Then it became bloated, changed its pricing repeatedly, and I stopped trusting it with my data.
Then I found UpNote. Clean interface, fast, and easy to use. Honestly, I loved it. But there was one problem: your data lives in Google Firebase, on someone else's cloud and inside a proprietary system. For a privacy-focused Linux user, that was a dealbreaker.
The Obsidian Detour
So I tried Obsidian. Local files, Markdown, and control over your own data. Great philosophy.
But the default experience felt like a plain Markdown editor, and I found it painful enough that I eventually stopped taking notes entirely.
Obsidian is powerful if you're willing to configure plugins, learn hotkeys, and tweak CSS. But I didn't want another hobby. I wanted to open an app, write something down, and close it.
What I Actually Wanted
It turned out to be pretty simple:
- UpNote's clean, intuitive interface
- Obsidian's philosophy: local .md files, no required cloud, and no lock-in
- Actually fast, not just "fast for an Electron app"
- Open source, so anyone can verify what it does with their data
That app didn't exist, so I built HelixNotes.
Why Tauri Instead of Electron
HelixNotes uses Rust and Tauri 2.0 for the application backend.
Tauri uses the operating system's native webview instead of bundling an entire copy of Chromium. That keeps the application smaller and reduces its memory footprint. For a note-taking app, there is no reason to ship another full browser.
The Stack
- Backend: Rust and Tauri 2.0
- Frontend: SvelteKit, Svelte 5, and Tailwind CSS v4
- Editor: TipTap v3, with a formatting toolbar, slash commands, and a source-mode toggle
- Search: Tantivy, a Rust-native full-text search engine that indexes notes and returns results quickly
- Storage: Plain .md files on your filesystem. Notebooks are folders, and metadata lives in frontmatter. There is no proprietary document database or format that requires HelixNotes to read.
Sync Without Lock-in
HelixNotes doesn't include its own sync service. That's intentional.
Because your notes are ordinary files inside a folder, you can sync them with whatever you already use: Nextcloud, Syncthing, Dropbox, rsync, Git, or nothing at all.
HelixNotes watches the filesystem and detects changes made by external applications or synchronization tools.
I'm not going to tell you where to store your files. That's your decision.
Open Source and AGPL-3.0
HelixNotes is licensed under AGPL-3.0. The source code, issue tracker, and releases are publicly available on GitLab:
https://gitlab.com/ArkHost/HelixNotes
There is no hidden service required to access your notes, and independent backups of the source and releases are maintained.
Get It
HelixNotes is available for Linux, Windows, and macOS.
- π helixnotes.com (https://helixnotes.com/)
- π¦ Source on GitLab (https://gitlab.com/ArkHost/HelixNotes)
- π₯ Releases (https://gitlab.com/ArkHost/HelixNotes/-/releases)
I built HelixNotes because I needed it. It turns out other people needed something similar. If you've been looking for the same thing, give it a try.
Top comments (0)