Skip to content

jonasjancarik/brewse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Brewse

An interactive TUI (Terminal User Interface) browser for Homebrew packages. Brewse provides a fast, user-friendly way to search, view, and install or uninstall Homebrew packages.

Installation

Using Homebrew (recommended)

brew install jonasjancarik/tap/brewse

The Homebrew formula warms Brewse's package cache during installation. To keep the cache warm automatically, enable the optional daily refresh service:

brew services start jonasjancarik/tap/brewse

brew install does not start the background service by itself; use brew services start jonasjancarik/tap/brewse only if you want the daily refresh. For a one-time cache refresh without the background service, run:

"$(brew --prefix jonasjancarik/tap/brewse)/bin/brewse" --prefetch

Usage

Launch Brewse in one of two ways:

  1. Interactive search mode:
brewse
  1. Direct search mode:
brewse <search-term>

Command-line Options

brewse --help            # Show all available options
brewse --version         # Show version number
brewse --refresh         # Force refresh of cached package data
brewse --prefetch        # Download package data into the cache and exit
brewse --clear-cache     # Clear all cached data and exit

Cache

Brewse caches package data in ~/.cache/brewse/ to improve performance. Cache entries expire after 24 hours.

brewse --prefetch refreshes the same cache without starting the TUI. This is intended for Homebrew's install hook and optional brew services daily refresh.

Alternative Installation Methods

Using pip

pip install brewse

Using pipx or uvx

Run in an isolated environment with pipx:

pipx install brewse

Or run instantly without installation using uvx:

uvx brewse

Note: uvx requires uv to be installed first:

brew install uv

Development & Releases

Release Process

Brewse uses automated releases with GitHub Actions:

  1. Update version in pyproject.toml and src/brewse/__init__.py
  2. Build and publish to PyPI:
    uv build
    uv publish
  3. Create a GitHub release:
    gh release create v0.4.0 --generate-notes

The GitHub Action will automatically:

  • Download the tarball from PyPI
  • Calculate the SHA256 hash
  • Update the Homebrew tap formula
  • Push changes to the homebrew-tap repository

See .github/AUTOMATION_SETUP.md for setup details. (Useful if you want to fork this repo, obviously you will need to change the GitHub username.)

Manual Tap Update

If needed, you can manually update the Homebrew tap:

cd ~/homebrew-tap
./update-formula.sh 0.4.0

License

This project is licensed under the MIT License. See the LICENSE file for details.

About

Terminal browser for Homebrew packages.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages