meine
meine 🌒 - A CLI file manager and system utility built with Textual. It combines intuitive command parsing with rich t…
A lightweight, open-source, privacy-first bookmark manager that unifies your bookmarks across multiple browsers, syncs…
Ever feel like your bookmarks are a chaotic mess ?
Ever find yourself swapping browsers when they stop meeting your demands ?
Have past bookmark managers let you down, vendor locking or abandoning you in your time of need ?
Would you rather avoid entrusting your bookmarks to cloud companies and browser extensions ?
Perhaps you keep multiple browser profiles for work, research, streaming, and development ?
Do you use some “obscure” browser that doesn't support extensions ?
If you're nodding your head to any of the above, then look no further:
GoSuki is a cloudless, extension-free, multi-browser, and real time bookmark tracker and organizer. It packs everything in a single binary and captures all your bookmarks in a portable database with multi-device sync & archiving capability. It will eventually support every internet browser under the sun.
Note: you can also drop bookmarks in a folder matching an action to execute the script. Folders are tags
Checkout the quick start guide.
Gosuki supports Linux, macOS, Windows, and BSD (FreeBSD, NetBSD, OpenBSD).
sqlite3 development librarygo install github.com/blob42/gosuki/cmd/gosuki@latest
go install -tags systray github.com/blob42/gosuki/cmd/gosuki@latest
suki cli commandsuki is a cli command to list/filter bookmarks with a customizable dmenu/rofi compatible output
go install github.com/blob42/gosuki/cmd/suki@latest
GoSuki is designed to run as a background service for real-time bookmark monitoring. Below are the recommended ways to start and interact with the application.
Start GoSuki as a persistent service (systemd example):
gosuki start
This initializes all configured browsers and begins real-time bookmark tracking.
By default the Web UI binds to 127.0.0.1:2025. Use --listen to change the address:
gosuki --listen 0.0.0.0:8080 start
Launch with an interactive terminal interface for real-time parsing overview:
gosuki --tui start
The TUI displays module status and bookmark processing metrics.
gosuki import buku
This will imports all bookmarks from Buku into Gosuki. Gosuki DB is compatible with buku, meaning you can symlink gosuki DB or add it to Buku and it will just work. However, gosuki cannot read a buku database unless it is imported with the above command.
Import bookmarks from a Pocket export in csv format:
gosuki import pocket export_file.csv
A leveled logging system is available with --debug={trace,debug,info,warn,error,fatal,none}
gosuki --debug=info ## Set debug level per subsystem gosuki --debug=info,chrome=trace
note use --debug=list to list the available levels and subsystems
Gosuki monitors the browser's internal bookmark files for changes. It uses the native OS event notification system to detect changes as they happen. This allows it to be fast and efficient, without the need for any plugins or extensions. This architecture makes it possible to load bookmarks from any kind of internet browser, API or program that emits something akin to a bookmark.
Browser definitions are stored in a single YAML file (pkg/browsers/browsers.yaml) and code is generated via make gen. Adding a new browser only requires adding its paths to this file.
The application maintains a local portable database of all tracked bookmarks, accessible via the built-in web UI or CLI.
Curious for more details on the internals ? Checkout the Architecture file.
I spent years working on and off on this project. My goal was to create a bookmark management solution resilient to vendor lock-in and the increasing trend of subscription services seeking rent for access to our curated internet content.
In the age of the "everything internet" web links and bookmarks represent a significant investment of human time spent curating and selecting relevant content. The past decade has seen a noticeable enshittification decline in the quality of internet results, with SEO-optimized blogs, marketing materials, and censored links making it increasingly difficult to find valuable websites and articles. Now with the advent of AI-generated “slop” and low-quality content, we face an endless stream of potentially fake and unreliable information.
GoSuki is my modest attempt to make the definitive solution for managing internet bookmarks that is: browser and platform agnostic, immune to vendor lock-in and fully self contained. The extension-free architecture of gosuki means that eventually every internet browser under the sun will be supported.
If you like this project consider starring the repo and supporting the effort.
GoSuki is a one-man project. If you find value in this tool, consider supporting its development through:
We welcome contributions from the community! To get started:
For bug reports, please provide detailed steps to reproduce the issue.
Read the "how does it compare to" guide.
In memory of my father, mentor, role model, best friend, and the kindest person I have ever known.
more like this
meine 🌒 - A CLI file manager and system utility built with Textual. It combines intuitive command parsing with rich t…
search projects, people, and tags