
nb
Command-line note-taking, bookmarking, and knowledge base tool with Git sync, encryption, and web browsing interface.
nb is a command-line note-taking and knowledge management application that stores data in plain text formats like Markdown, Org, LaTeX, and AsciiDoc. It provides Git-backed versioning and syncing, allowing users to automatically track changes and sync notebooks with remote repositories. The tool supports password-protected encrypted notes, full-text search with regular expression support, filtering, tagging, and wiki-style linking between notes.
The application includes a built-in bookmarking system that downloads and caches web page content locally, creating human-readable Markdown documents from bookmarks. Users can browse bookmarks through both terminal and GUI web interfaces in a distraction-free environment. The bookmarking feature integrates with Internet Archive Wayback Machine for broken link recovery and supports local full-text search of cached content.
Nb works with any text editor that supports command-line operation, including Vim, Emacs, VS Code, and Sublime Text. It runs on Linux, Unix, macOS, and Windows via WSL, MSYS, or Cygwin. The entire application is contained within a single portable shell script that requires only Bash and Git as dependencies, though it can leverage optional tools like Pandoc for document conversion, ripgrep for enhanced search, and various terminal utilities for improved functionality. Users can organize content across multiple notebooks, create todos with task management, and extend functionality through plugins.
Installation
# via Homebrew
brew install xwmx/taps/nb
# via npm
npm install -g nb.sh
# via wget
sudo wget https://raw.github.com/xwmx/nb/master/nb -O /usr/local/bin/nb && sudo chmod +x /usr/local/bin/nb && sudo nb completions install --download



Alternatives & related tools
presenterm
Terminal slideshow tool that runs markdown files as presentations, with images, themes, code highlighting and execution, and PDF/HTML export.
Himalaya
Rust CLI for managing email across IMAP, SMTP, JMAP, Gmail, Microsoft Graph and Maildir backends, with multi-account TOML config and JSON output.
translate-shell
Command-line translator powered by Google Translate, Bing, Yandex, and Apertium translation engines
jrnl
Command-line journal application that creates, searches, and views entries stored as plain text, with optional AES encryption.
gopass
Command-line password manager compatible with pass, supporting GPG encryption, Git versioning, and team collaboration
add a badge to your README
Maintain nb? Show that it's featured on trmn. The badge links back to this page.
[](https://www.trmn.sh/tools/nb?utm_source=badge)<a href="https://www.trmn.sh/tools/nb?utm_source=badge"><img src="https://www.trmn.sh/badge/nb.svg" alt="Featured on trmn" height="20"></a>