A personal search engine for your browsing history.
Ever struggled to find that one article you read weeks ago? bigbrowser indexes the full content of every page you visit.
The browser extension records your browsing activity. The server indexes pages and powers the search.
cargo build --release
The binary will be at ./target/release/bigbrowser.
openssl rand -hex 32
Create bigbrowser.toml:
# Required: API key for the browser extension
api_key = "<your-api-key>"
# Server address (default: 127.0.0.1:3000)
addr = "127.0.0.1:3000"
# Data directory for bigbrowser.db and search index (default: XDG data dir, e.g. ~/.local/share/bigbrowser)
# data_dir = "." # use current directory
# Web UI authentication (disabled by default, use --hash-admin-password to generate the hash)
# authenticated = true
# password_hash = "<generated-hash>"
Settings can also be set via environment variables with the BIGBROWSER_ prefix (e.g. BIGBROWSER_API_KEY, BIGBROWSER_DATA_DIR). The --data-dir flag overrides the data directory at runtime.
Run from the directory containing bigbrowser.toml:
bigbrowser
Visit http://127.0.0.1:3000 to verify the server is running.
A signed extension can be downloaded here: https://bigbrowser.tech/extension/. It is the recommended way to get started.
Configure the extension's preferences:
http://127.0.0.1:3000 (or your server address)desktopBuild the extension:
cd bigbrowser_extension
make build
Install in Firefox:
about:addons / Debug Add-onsbigbrowser_extension/web-ext-artifacts/bigbrowser-X.X.X.zip as a temporary addonThen configure the extension as described above.
By default, the web UI has no authentication. To enable it:
First, generate a password hash:
bigbrowser --hash-admin-password
Then enable authentication in the config and set the password_hash:
authenticated = true
password_hash = "<generated-hash>"
Full documentation is available at bigbrowser.tech
Migrations run in-process on startup. To run them manually (e.g. for a custom data dir), pass the database path (default: $XDG_DATA_HOME/bigbrowser/bigbrowser.db or ~/.local/share/bigbrowser/bigbrowser.db):
diesel migration run --config-file bigbrowser/diesel.toml --migration-dir bigbrowser/migrations/ --database-url="$HOME/.local/share/bigbrowser/bigbrowser.db"
bigbrowser --rebuild-index [--force]
cargo run -p bigbrowser_scraper -- https://example.tld example.html scrapers/example.lua
Copyright (C) 2023-2026 Thomas Sileo thomas.sileo@sent.com
This project is licensed under the GNU Affero General Public License v3 or later (see the LICENSE file).