buku logo

buku

Powerful command-line bookmark manager with private, portable database

A flexible CLI bookmark manager with auto-fetch, powerful search, browser import, and optional web UI. Merge-able database, privacy-focused, and extensible as a Python library.

Overview

What is buku?

buku is a command-line bookmark manager designed for users who need a private, portable, and powerful solution for organizing web resources. It stores bookmarks in a local SQLite database that can be synced and merged across systems without cloud dependencies or tracking.

Core Capabilities

buku auto-fetches titles, tags, and descriptions from URLs, imports bookmarks from major browsers (Firefox, Chrome, Edge, Brave), and offers advanced search with regex, substring matching, and field-specific queries. It integrates seamlessly with text editors for composing bookmarks, checks broken links via the Wayback Machine, and supports encryption for sensitive data. The companion bukuserver provides a browsable web interface for those preferring GUI workflows.

Who Uses buku?

Ideal for developers, researchers, and power users who value command-line efficiency, data ownership, and scriptable automation. buku doubles as a Python library with a documented API, enabling integration into custom workflows. With shell completion for Bash/Fish/Zsh, multi-threaded refresh, and export to HTML/Markdown/Orgfile formats, it fits both personal knowledge management and team collaboration scenarios where privacy and portability matter.

Highlights

Private, merge-able SQLite database with no tracking or analytics
Auto-import from Firefox, Chrome, Edge, Brave, and Vivaldi browsers
Powerful search: regex, deep scan, field-specific markers, and random revisit
Dual interface: CLI with shell completion plus optional bukuserver web UI

Pros

  • Fully offline with complete data ownership and portability
  • Rich search syntax including regex and field-specific queries
  • Extensible as a Python library with documented API
  • Active maintenance with comprehensive documentation and examples

Considerations

  • Command-line interface has a learning curve for non-technical users
  • Manual encryption setup required; not encrypted by default
  • Web UI (bukuserver) is separate and requires additional configuration
  • No built-in cloud sync; users must manage database synchronization

Managed products teams compare with

When teams consider buku, these hosted platforms usually appear on the same shortlist.

Bookmarkify logo

Bookmarkify

Visual bookmark manager for creative inspiration.

booky logo

booky

Online bookmark manager and start page for private, customizable collections.

Diigo logo

Diigo

Social bookmarking with web and PDF annotation.

Looking for a hosted option? These are the services engineering teams benchmark against before choosing open source.

Fit guide

Great for

  • Developers and sysadmins who live in the terminal
  • Privacy-conscious users wanting local-only bookmark storage
  • Researchers managing large collections with complex tagging needs
  • Teams needing scriptable, version-controlled bookmark workflows

Not ideal when

  • Users requiring native mobile apps or cloud-first solutions
  • Non-technical audiences uncomfortable with command-line tools
  • Organizations needing enterprise SSO or centralized admin controls
  • Workflows dependent on real-time collaborative editing

How teams use it

Research Link Curation

Academics tag and search hundreds of papers by topic, author, or keyword using regex queries and export collections to Markdown for publication.

Developer Resource Library

Engineers import browser bookmarks, auto-refresh titles, and script nightly exports to a Git repo for team-wide access to curated documentation links.

Privacy-Focused Archiving

Journalists encrypt sensitive source URLs locally, check link integrity via Wayback Machine, and sync the database across air-gapped systems.

Personal Knowledge Base

Power users integrate buku with text editors and shell aliases to instantly capture, tag, and retrieve web resources without leaving the terminal.

Tech snapshot

Python86%
Roff6%
HTML6%
Shell1%
JavaScript1%
CSS1%

Tags

command-lineorganizerterminalsearchconsolebookmark-managerclistandalonebookmarkprivacy-awarebookmarks

Frequently asked questions

Does buku require an internet connection?

No. buku works entirely offline. Internet is only needed for auto-fetching metadata, checking Wayback Machine links, or using bukuserver remotely.

How do I sync bookmarks across multiple machines?

buku stores bookmarks in a portable SQLite file. Sync it via Git, Syncthing, Dropbox, or any file-sync tool. The database is designed to be merge-able.

Can I use buku without the command line?

Yes. Install bukuserver, the companion web application, which provides a browser-based GUI and HTTP API for managing bookmarks on a local server.

Is my bookmark data encrypted?

Not by default. buku supports manual encryption via the cryptography library. You must enable and configure encryption yourself for sensitive data.

Can I import bookmarks from my browser?

Yes. buku auto-imports from Firefox, Chrome, Chromium, Edge, Brave, and Vivaldi. It can also import/export HTML, XBEL, Markdown, and Orgfile formats.

Project at a glance

Active
Stars
7,002
Watchers
7,002
Forks
310
LicenseGPL-3.0
Repo age10 years old
Last commit3 weeks ago
Primary languagePython

Last synced 3 hours ago