Bogrep – Grep your bookmarks
Bogrep downloads and caches your bookmarks in plaintext without images or videos. Use the Bogrep CLI to grep through your cached bookmarks in full-text search.

- Install Bogrep
- Usage
- Getting help
- Import bookmarks
- Specify bookmark folders
- Ignore URLs
- Diff websites
- Request throttling
- Supported operating systems
- Testing
Install Bogrep
Install Bogrep from crates.io
# Build and install bogrep binary to ~/.cargo/bin
Install Bogrep from github.com
# Build and install bogrep binary to ~/.cargo/bin
Usage
Settings and cache are installed to ~/.config/bogrep, after Bogrep has been
run for the first time.
# Configure the path to the bookmarks file (e.g. of your browser)
# Import bookmarks
# Fetch and cache bookmarks
# Search your bookmarks in full-text search
Getting help
# Check version
# Print help
# Print help for subcommands
Import bookmarks
Currently, bookmarks in JSON format for Firefox, Chrome, and Chromium are supported. Bookmark files in HTML format are not supported yet.
The path of bookmarks may be different for your operating system.
Firefox
Configure Firefox as source for bookmarks, where <my_profile> is your Firefox profile:
# Ubuntu (snap package)
# Ubuntu (apt package)
# macOS
Directory bookmarkbackups contains multiple compressed backup files (in
format .jsonlz4), and bogrep will choose the most recent bookmarks file.
Chrome
Configure Chrome as source for bookmarks:
# Ubuntu
# macOS
Chromium
Configure Chromium as source for bookmarks:
# Ubuntu (snap package)
Specify bookmark folders
Specify which bookmark folders are imported. Multiple folders are separated by comma:
Ignore urls
Ignore specific urls. The content for these urls will not be fetched and cached.
It can be useful to ignore urls for video or music platforms which usually don't include relevant text to grep.
# Ignore one or more urls
Diff websites
Fetch difference between cached and fetched website for multiple urls, and display changes:
Request throttling
Fetching of bookmarks from the same host is conservatively throttled, but can
also be configured in the settings.json usually
placed at ~/.config/bogrep in your home directory:
where request_throttling is the waiting time between requests for the same
host in milliseconds.
Supported operating systems
Bogrep assumes a configuration path at ~/.config/bogrep in your home directory
for storing the settings.json, bookmarks.json, and cache folder. This
should work for most Linux derivatives. Feel free to open an issue if you need
support for Windows.
You can configure the configuration path via the environment variable
BOGREP_HOME. For example,
BOGREP_HOME="my/config/path"
Testing
# Run unit tests
# Run integration tests
# Run unit and integration tests