Skip to content

Latest commit

 

History

History
316 lines (212 loc) · 7.14 KB

README.md

File metadata and controls

316 lines (212 loc) · 7.14 KB

yoo — know the project you’re in

Open a repo. Know where to start.
Project details, Git status, and development tools in your terminal.

CI crates.io npm GPL-3.0-or-later

Install · Try it · Screenshots · Documentation · Releases

yoo running in a real terminal

yoo is a local CLI built in Rust for Linux, macOS, and Windows. See the project you’re in, check its tools, inspect Git changes, save project snapshots, or start a focus timer. No account, background service, telemetry, or AI connection is required to use the tool.

Install

Choose one installation method. Use GitHub’s copy button in the top-right corner of each command block.

Arch Linux (AUR)

yay -S yoo-bin

Cargo — build from source

Requires Rust 1.85 or newer. Use this on other supported Rust targets too.

cargo install yoo --locked

Cargo Binstall — prebuilt binary

cargo binstall yoo

pnpm

pnpm add -g @nihit_dev/yoo

Bun

bun add -g @nihit_dev/yoo

Homebrew

brew tap nihitdev/tap
brew install yoo

Windows (WinGet)

winget install --id Nihitdev.yoo --exact

Windows (Scoop)

scoop bucket add nihitdev https://github.com/nihitdev/scoop-nihitdev
scoop install nihitdev/yoo

Nix — run without installing

nix run github:nihitdev/yo-cli

Verified shell installer

Linux x86-64 and Apple Silicon macOS; installs to ~/.local/bin.

curl --proto '=https' --tlsv1.2 -LsSf https://yo-cli.vercel.app/yo-setup | sh

Debian and Ubuntu (APT)

curl -fsSL https://yo-cli.vercel.app/apt/setup.sh | sudo sh
sudo apt install yoo

npm — prebuilt binary

Requires Node.js 18 or newer. Supports Linux x64, Windows x64, and Apple Silicon macOS. The installer verifies the release checksum before installing.

npm install -g @nihit_dev/yoo

Other packages, including RPM, APK, XBPS, and Flatpak, are covered in the installation guide. Download release binaries and checksums from GitHub Releases.

Try it

Open a terminal in your project directory, then run:

yoo --fast

Understand the project

Show the language, package manager, manifest, source counts, and Git state.

yoo project

Check your setup

Check the tools that match your project. Optional configuration warnings are shown separately from failures.

yoo doctor

Inspect your environment

yoo fetch

Save a snapshot, then compare

Save a local report before you start working:

yoo snapshot

After making changes, compare the saved report with the current project:

yoo snapshot compare --current

Snapshots stay in .yoo/snapshots/ and are ignored by Git automatically.

Start a 25-minute focus session

yoo session 25

Open the project in your editor

yoo edit

Get a reminder

yoo tip rust

Use the output in a script

yoo project --json

All commands, flags, exit codes, and examples →

Screenshots

Real captures of the CLI on Linux, including the tools and Git state detected on the capture machine. Your platform, versions, and warnings will differ.

Project overview

Project manifest, source counts, and Git details

Development environment

Operating system, shell, tool versions, and project context

Setup checks

Doctor checks with separate passes, warnings, and failures

See the focus timer, tips, and editor

Focus timer

A running local coding session

Tips

Available tip packs and a Rust reminder

Editor

Opening the project in Neovim with yoo edit

Make it yours

Create your local configuration:

yoo init

Find its location:

yoo config

Try a theme without changing your configuration:

yoo --fast --theme catppuccin

Nine themes: neon, ocean, mono, dracula, tokyo-night, gruvbox, nord, rose-pine, catppuccin. Configure your editor, timer, ASCII art, colors, and YAML tip packs in the configuration guide.

Enable completion for your shell using the Bash, Zsh, Fish, and PowerShell instructions.

Supported projects

Rust, Zig, Node.js, Python, Go, Java, Ruby, PHP, Swift, Dart/Flutter, Elixir, C/C++ with CMake, and .NET.

Detection uses manifests in the current directory. Source counts respect ignore rules. In mixed projects, the first matching manifest wins. Detection markers and precedence →

Troubleshooting

  • Command not found? Restart your terminal and check that your package manager’s binary directory is on PATH.
  • Missing tools or configuration? Run yoo doctor. A missing optional configuration file uses defaults.
  • Unexpected project? Run from the directory containing its manifest. Project paths are not positional arguments.
  • Need to check the installed version? Run:
yoo --version
yoo 1.1.3

Installation, updates, and removal · Report a bug

Build and contribute

git clone https://github.com/nihitdev/yo-cli.git
cd yo-cli
cargo build --release --locked
bash scripts/check.sh

The check script also needs Node.js 24, Bash, and Git. See Contributing for setup and Code structure for module responsibilities.

Changelog · Release guide · Security · GPL-3.0-or-later