yoo
What is yoo?
yoo is a Rust CLI that makes opening a terminal feel a little better.
It gives you a friendly developer-session greeting, shows project and Git state, checks your Rust setup, fetches environment information, analyses the project in the current directory, offers practical tips, and includes a lightweight local focus timer.
Terminal open. Brain online. Let's go. ⚡
📁 Project: yo-cli
🌿 Git branch: main
✏️ Working tree: clean
💡 Tip: Write the test that would have caught your last bug.
Features
- 🚀 Friendly developer session starter
- 🩺
yoo doctorfor Rust, Cargo, Git, config, and project checks - ⚡
yoo fetchfor developer-environment and project detection - 📦
yoo projectfor project metadata, source stats, Git details, and project-file checks - 📄 JSON output with
yoo fetch --jsonandyoo project --json - ⏱️ Local coding-session timer with
yoo session - 📝 YAML configuration
- 💡 Built-in and community YAML tip packs
- 🌿 Current Git branch and working-tree status
- 🎨 Nine terminal themes
- 🦀 Written in Rust
- ✅ Unit tests, formatting checks, Clippy, and GitHub Actions CI
Screenshots
Start a coding session
Check your setup
Fetch your developer environment
Inspect the current project
yoo project — project overview
📦 Name: yoo
🔧 Language: Rust
📦 Package manager: Cargo
📄 Manifest: Cargo.toml
🏷 Version: 0.6.1
🦀 Edition: 2024
⚖ License: GPL-3.0-or-later
📁 Source files: 10
📏 Source lines: 2,000+
🌿 Git branch: main
✏️ Working tree: clean
Installation
Cargo (cross-platform)
Update later:
Scoop (Windows)
scoop bucket add nihitdev https://github.com/nihitdev/scoop-nihitdev
scoop install yoo
Update later:
scoop update
yoo --version
scoop update yoo
WinGet (Windows)
The package is being prepared for the official WinGet community repository.
winget install --id Nihitdev.Yoo
Start your first developer session:
Commands
yoo
yoo doctor
yoo fetch
yoo fetch --json
yoo status
yoo project
yoo project --json
yoo init
yoo config
yoo tips
yoo tip rust
yoo session
yoo session 25
Useful options
Themes
neon
ocean
mono
dracula
tokyo-night
gruvbox
nord
rose-pine
catppuccin
Example:
Project detection
yoo project and yoo fetch detect these project markers:
| Project type | Marker | Package-manager detection |
|---|---|---|
| Rust | Cargo.toml |
Cargo |
| Node.js | package.json |
npm, pnpm, Yarn, or Bun |
| Python | pyproject.toml |
pip, uv, Poetry, or Pipenv |
| Go | go.mod |
Go modules |
| Java | pom.xml or Gradle files |
Maven or Gradle |
| .NET | .sln or .csproj |
.NET SDK |
yoo project counts source files and lines while skipping generated or heavy folders such as .git, target, node_modules, dist, build, .next, .venv, and vendor.
Configuration
Create the default YAML configuration and a sample community tip pack:
Config locations:
Windows: %APPDATA%\yoo\config.yaml
Linux: ~/.config/yoo/config.yaml
macOS: ~/Library/Application Support/yoo/config.yaml
Print the active config path:
Tip packs
yoo ships with these built-in tip packs:
general
git
linux
rust
Get one random Rust tip:
Community packs are YAML files stored here:
Windows: %APPDATA%\yoo\tips
Linux: ~/.config/yoo/tips
macOS: ~/Library/Application Support/yoo/tips
Development
Roadmap
- Developer session greeting
- Git branch and working-tree summary
- YAML configuration
- Themes
-
yoo doctor - Local coding-session timer
- Community YAML tip packs
-
yoo fetchdeveloper environment and project status -
yoo projectproject overview and source stats - JSON output for
yoo fetchandyoo project - Automated cross-platform GitHub releases
- More tip packs from contributors
- Shell completion support
- Better terminal accessibility options
- Optional release update checker
Contributing
Contributions, ideas, tip packs, and bug reports are welcome.
Read CONTRIBUTING.md before opening a pull request.
License
yoo is licensed under the GNU General Public License v3.0 or later.
See LICENSE for details.
Built with ❤️ and Rust by @nihitdev.