I built JustBookmarks, a small desktop bookmark manager for people who want one browser-independent source of truth for bookmarks. I made it because I end up switching browsers fairly often: Vivaldi, Zen, Helium, Brave and others. I wanted a central way to manage bookmarks that lived outside any single browser. I would end up with different exported bookmark files in various states of parity with each other and managing it was getting frustrating. So looked at what tools are out there and they were either online (raindrop), or self hosted but needlessly complex (linkwarden) while still somehow missing the most basic bookmark management feature, Folders, while focusing on nonstandardized forms of grouping like tags.
These other tools build their own data model to bring non standard features requiring you to need to export to a supported file to get those bookmarks into your browser. So instead, I figured it's much simpler to just use the most universally compatible bookmarks file type directly, the Netscape Bookmark File Format.
The basic idea is:
- Netscape Bookmark HTML format is the data model used directly
- You only have one .html file to manage
- That file is directly importable into whatever browser you are using
- No cloud, SaaS, bologna, it's a file on your computer
Features:
- Folder tree
- Search (darn fast)
- Drag and Drop reordering of folders and bookmarks
- Remembers state from previous session
- Automatic Favicon and Title fetching
- Auto-save on every edit
- Ability to merge multiple bookmark files into one
- Intuitive keyboard shortcuts
- ctrl+z undo, ctrl+shift+z & ctrl+y redo
- ? or F1 to open helper/shortcut menu
- Ctrl/Shift mutliselect with mouse or arrow keys for bulk actions
- F2 Rename
- many more
It's not trying to be fancy. No tags or no syncing platform or browser extensions. Just one bookmark file you can backup or sync however you want.Love some feedback because I find it a little crazy I couldn't find something like this already out there. I'm sure it exists I just couldn't find it which is why I figured I'd post this here in hopes that maybe someone else looking in the future can find this.
Why is it Go & Svelte?: Mostly because I didn't want to spend forever working on it, I wanted it to exist so I could use it. Web Stacks are genuinely quite good for making UI's but Electron is pretty awful in a lot of ways so wanted to go with an alternative. While Tauri is likely a "better" choice, the tool stack for Rust is a bit heavier and compilation is slow and such compared to Go. If I'm imagining some # of years in the future, someone trying to pull and build the code, I imagine Go being easier. Wails takes a similar approach to Tauri just with Go instead of Rust, and has pretty good performance. As for Svelte? I just like it. s'good. Fast to develop and fast on performance. That said. I am strongly considering rewriting the frontend to fyne so it could be all Go, making maintenance and build stack simpler. Anything in the web stack / npm world just has a lot of churn.