#search #installed #project #cargo-crates #crates #documentation

app cargo-seek

A terminal user interface for searching, adding and installing cargo crates

1 unstable release

new 0.1.0 Apr 30, 2025

#306 in Cargo plugins

Download history 95/week @ 2025-04-26

95 downloads per month

MIT license

5.5MB
4K SLoC

cargo-seek

A terminal user interface (TUI) for searching, adding and installing cargo crates.

preview

Features 🚀

  • Search
    • Sort by: Relevance, Name, Downloads, Recent Downloads, Recently Updated, Newly Added.
    • Search in: Online, Project, Installed or All
    • Visually label project dependencies & installed binaries
    • Paging
  • Add, remove crates to projects
  • Install, uninstall a cargo binary
  • Open docs
  • Open repository
  • Open crate on crates.io
  • Open crate on lib.rs

Roadmap 🚧

  • Flag outdated with ability to update
  • Settings to configure behavior and appearance
  • Show more crate details: dependencies, version history...etc
  • Open repository README in terminal using glow or mdcat

Install

[!IMPORTANT]
This crate is not published to crates.io yet. Until then, download the binary from the releases page.

cargo install --locked cargo-seek

Usage

cargo-seek

or as a cargo sub-command:

cargo seek

Options

cargo-seek.exe [OPTIONS] [PROJECT_DIR]

Arguments:
  [PROJECT_DIR]  Path to a directory containing (or one of its parents) a Cargo.toml file
                 Default: <current directory>
Options:
  -s, --search <TERM>  Start a search on start
  -h, --help           Print help
  -V, --version        Print version
  
UI Options:
  -f, --fps <FLOAT>    Frame rate, i.e. number of frames per second [default: 30]
  -t, --tps <FLOAT>    Tick rate, i.e. number of ticks per second [default: 4]
      --counter        Show TPS/FPS counter

Cargo Projects

If a cargo project (Cargo.toml) is found in the current directory or one of its parents, you can use cargo-seek to add and remove crates to your cargo project. You can also direct crate-seek to target a specific cargo project directory:

# dir, or one of its parents, should contain a cargo.toml file
cargo seek /path/to/dir

Key Bindings

Key Action
Enter Run search
Ctrl + a Search scope
Ctrl + s Sort

Navigation

Key Action
Tab Switch between boxes in the UI
ESC Go back to search; if already there will clear results
Ctrl + Left/Right Change column width
Ctrl + h Toggle usage/help screen
Ctrl + c Quit

Results

Key Action
a Add crate to current project
r Remove crate from current project
i Install binary
u Uninstall binary
Ctrl + d Open docs
Left, Right Go previous/next page
Home, End Go to first/last crate in page
Ctrl + Home/End Go to first/last page

Credits

Dependencies

~28–47MB
~763K SLoC