Tinycity is terminal application written in C# that lists, searches, imports, and exports your bookmarks files, displaying them in the terminal and optionally launching them in your default browser.
It doesn't manage your bookmarks (adding/editing/deleting), it just lists, searches, imports, and exports them.
The terminal output includes links that can be clicked. It supports the following bookmarks:
- Chrome, Brave, Opera and Edge bookmarks (Chromium JSON bookmark format)
- Markdown files with links.
- Bookmark export HTML (Netscape) format which all browsers export their bookmarks as.
Package managers
Scoop on Windows:
scoop bucket add tinycity https://github.com/yetanotherchris/tinycity
scoop install tinycityHomebrew on macOS/Linux:
brew tap yetanotherchris/tinycity https://github.com/yetanotherchris/tinycity
brew install tinycityVia your terminal
Powershell
Invoke-WebRequest -Uri "https://github.com/yetanotherchris/tinycity/releases/latest/download/tinycity.exe" -OutFile "tinycity.exe"Bash
wget -O tinycity "https://github.com/yetanotherchris/tinycity/releases/latest/download/tinycity"curl -o tinycity -L "https://github.com/yetanotherchris/tinycity/releases/latest/download/tinycity"You can also download the latest release directly from the Releases page.
Description:
A command line tool for searching, importing, and exporting bookmarks
Usage:
tinycity [command] [options]
Options:
--version Show version information
-?, -h, --help Show help and usage information
Commands:
q, search <query> Search the bookmarks.
list, ls List all bookmarks.
config Configure bookmark sources.
export Export bookmarks to S3 or local filesystem.
import Import bookmarks from S3 or local filesystem.
# Configuration
tinycity config
tinycity config --add-source chrome
tinycity config --add-source chrome --directory /home/user/.var/app/io.github.ungoogled_software.ungoogled_chromium/config/chromium/Default
tinycity config --add-source more-bookmarks.md
tinycity config --remove-source brave
# Search
tinycity search "google.com" --urls
tinycity q "gmail"
tinycity search "openrouter" --launch
# List
tinycity ls
tinycity ls --export
# Export/Import
tinycity export --type local --source all --directory ~/backup
tinycity export --type remote --source chrome --bucket my-bucket --s3-endpoint https://s3.amazonaws.com
tinycity import --type local --target chrome --directory ~/backup
tinycity export --type remote --source all --s3-endpoint youraccount-id.r2.cloudflarestorage.com--s3-access-key key123 --s3-secret-key keyxyz --bucket yours3bucket --save-credentials
tinycity import --type remote --source chrome --s3-endpoint s3.eu-central-003.backblazeb2.com --s3-access-key key123 --s3-secret-key keyxyz --bucket yours3bucket --save-credentials
If you clone the source using git clone (requires .NET 10 or later):
dotnet run --
dotnet run -- ls
dotnet run -- search "google" -urls
dotnet run -- search "gmail"
dotnet run -- search "openrouter" --launch
The name was generated using a name generator.