Repolode
jarun

jarun/buku

A command-line bookmark manager with auto-fetched titles and tags, browser import, full-text and regex search, and a portable SQLite database.

Open-source alternative to:PinboardRaindrop.io

Stars
7,240
Forks
322
Open issues
2
Last commit
3 days ago

What is it?

buku is a bookmark manager that runs in the terminal. When you add a URL, it fetches the page title, description and can attach tags, so you rarely need to type metadata by hand. It can import bookmarks directly from Firefox, Chrome, Chromium, Vivaldi, Brave and Edge, and also reads and writes HTML, XBEL, Markdown, RSS/Atom and Org files.

Bookmarks are stored in a local database that is designed to be portable and mergeable between machines. Search supports substring, regex and field-specific markers for title, URL, description and tags. buku also includes optional manual encryption of the database, tag rename and redirect rules, and a check for broken links via the Wayback Machine.

buku can be used as a Python library, and a separate bukuserver project provides a browser-based front end with an HTTP API for personal use.

Key features

  • 01Auto-fetches page title, description and tags when adding a bookmark
  • 02Imports from Firefox, Chrome, Chromium, Vivaldi, Brave and Edge
  • 03Search with substring, regex, tag logic and field markers
  • 04Exports and imports HTML, XBEL, Markdown, Org, RSS/Atom and JSON
  • 05Local database with optional manual encryption
  • 06Can be used as a Python library

Use cases

  • Keeping a searchable bookmark collection for developers who work mostly in the terminal
  • Migrating bookmarks from browsers into a single portable file
  • Piping bookmark lists into fzf or other shell tools for quick opening
  • Auditing old bookmarks for dead links or redirects

Quick start

  1. 1

    Install buku from PyPI with pip

    pip3 install buku
  2. 2

    Add a bookmark with auto-fetched title and tags

    buku --add https://example.com
  3. 3

    Search your bookmarks

    buku --sany keyword

Things to know

  • Terminal-only by default; a GUI requires the separate bukuserver component.
  • Requires Python 3.10 or newer.

In collections

Topics

FAQ

What is buku?
A command-line bookmark manager with auto-fetched titles and tags, browser import, full-text and regex search, and a portable SQLite database. buku is a bookmark manager that runs in the terminal. When you add a URL, it fetches the page title, description and can attach tags, so you rarely need to type metadata by hand. It can import bookmarks directly from Firefox, Chrome, Chromium, Vivaldi, Brave and Edge, and also reads and writes HTML, XBEL, Markdown, RSS/Atom and Org files.
Is buku free to use? What license does it have?
buku is open source under the GPL-3.0 license. Check the license terms before using it in commercial products.
Is buku still maintained?
Actively maintained. The last commit to buku was on Oct 22, 2026.
What can I use buku for?
Keeping a searchable bookmark collection for developers who work mostly in the terminal Migrating bookmarks from browsers into a single portable file Piping bookmark lists into fzf or other shell tools for quick opening Auditing old bookmarks for dead links or redirects
How do I install buku?
Install buku from PyPI with pip: pip3 install buku Add a bookmark with auto-fetched title and tags: buku --add https://example.com Search your bookmarks: buku --sany keyword
Where can I get buku?
The source code and installation instructions are on GitHub: https://github.com/jarun/buku

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects