Quickstart

This guide will walk you through the steps to get Gosuki up and running on Linux.

The macOS bundle package is available in beta, with other platforms planned for later releases.

Requirements

Packaged Released

  • No extra dependency required

Building from source

  • Go: Version 1.20 or later. Install Go
  • SQLite: Ensure SQLite library is installed on your system.
  • Git: Required if installing from source or using the Go package.
  • Make & GCC: Install build-essential on Ubuntu/Debian based and base-devel on Arch based distros

Installation

Install using Go

go install github.com/blob42/gosuki/cmd/gosuki@latest

# optional 
go install github.com/blob42/gosuki/cmd/suki@latest

This will install the gosuki binary in your $GOPATH/bin directory. Make sure this directory is in your $PATH.

Build from source

  1. Clone the repository:

    git clone https://github.com/blob42/gosuki
    cd gosuki
  2. Build the binary:

    make release
  3. (optional) if you want the desktop systray feature

    make SYSTRAY=true release
  4. Move the binaries to your PATH:

    sudo mv build/gosuki /usr/local/bin/
    sudo mv build/suki /usr/local/bin/

Arch Linux package

TODO

Running Gosuki

Starting the server

By default the gosuki starts in daemon mode ready to run as a systemd service:

gosuki start 
starting the daemon

starting the daemon

gosuki --debug=2 start 
starting the daemon in debug mode

starting the daemon in debug mode

Starting the server in TUI mode

To start the daemon in TUI mode (for debugging or real-time overview ), execute:

gosuki --tui start
#note: use `--debug=-1 --tui` to disable logs
starting with tui

starting with tui

Once started, the daemon will:

  1. Initialization: Detect installed browsers and user profiles, and load configured modules.

  2. Load Modules: Load built-in modules (e.g., GitHub stars, Reddit saved posts).

  3. Load Bookmarks: Load bookmarks from detected browsers and modules into the local database. This happens automatically – no manual intervention is required.

The gosuki binary offers many cli commands, use gosuki help to learn more.

Accessing Your Bookmarks

You can access and manage your bookmarks in several ways:

  • Web Interface: Access the web interface by navigating to localhost:2025.
local Web UI

local Web UI

  • Command Line (suki): Use the suki client for quick searches and filtering.
  • Buku: Use Buku[1] to manage your bookmarks.

Adding Bookmarks

Once Gosuki is running, you can add bookmarks using your browser’s native tools, and Gosuki will automatically detect and save them. Here’s how it works:

Browser Integration

  • Native Shortcut: Keep browsing as usual. When you add a bookmark using your browser’s native shortcut (e.g., Ctrl+D on Linux/Windows or Cmd+D on macOS), Gosuki will detect the change and save the bookmark to its database.
  • Real-Time Availability: The newly added bookmark will immediately appear in both the suki CLI tool and the web UI.

Tag Support

  • Automatic Tag Detection: If you add tags to your bookmark, Gosuki will automatically pick them up and associate them with the bookmark.
  • Chrome Workaround: Since Chrome doesn’t natively support tags, you can include tags directly in the bookmark title in the “Add Bookmark” popup (e.g., My Bookmark #work #notes).
  • Firefox Native Support: On Firefox-based browsers, tags are supported natively through the browser’s interface.

Folder Become Tags

Bookmarks organized in browser folders will be automatically flattened into a tag-based system. For example, a bookmark in a “Work” folder might be tagged with #work automatically.

Interoperability with Buku

Gosuki is fully interoperable with Buku, a popular command-line bookmark manager. Gosuki emulates the database format of Buku, allowing:

  • Buku to use Gosuki’s database: Buku and Buku apps can directly access and manage bookmarks stored in Gosuki’s database.
  • Seamless migration: You can migrate your existing Buku database to Gosuki by using the gosuki buku import command, which imports all Buku bookmarks into Gosuki’s database.

Importing Buku Bookmarks into Gosuki

To import bookmarks from an existing Buku database into Gosuki, run:

gosuki buku import

This command will load all bookmarks from your Buku database into Gosuki, allowing you to manage them using Gosuki’s features while maintaining compatibility with Buku tools.