Skip to content

Contributing

nihitdev edited this page Jul 30, 2026 · 1 revision

Contributing

Contributions to yoo are welcome. Keep changes focused and avoid adding unnecessary dependencies or complexity.

Requirements

  • Git
  • Rust 1.85 or newer
  • Cargo
  • Rustfmt
  • Clippy

Install the Rust toolchain through rustup if necessary.

Local setup

Fork the repository, then clone your fork:

git clone https://github.com/YOUR-USERNAME/yo-cli.git
cd yo-cli

Build and run the project:

cargo build
cargo run -- --fast

Development checks

Run these checks before opening a pull request:

cargo fmt --check
cargo test --locked
cargo clippy --locked -- -D warnings
cargo build --release --locked

Contribution guidelines

  • Keep each pull request focused.
  • Explain what changed and why.
  • Add or update tests for behaviour changes.
  • Avoid unnecessary dependencies and large abstractions.
  • Update documentation when users will notice the change.
  • Keep yoo local-first and lightweight.
  • Do not add telemetry or unnecessary network services.

Community tip packs

Tip packs are YAML files:

name: web
description: Useful web-development reminders.
tips:
  - Test loading, error, and empty states.
  - Check the browser console before guessing.

Tips should be:

  • Practical
  • Short
  • Original
  • Safe for a broad developer audience

Opening a pull request

  1. Create a branch.
  2. Make and test your changes.
  3. Commit with a clear message.
  4. Push the branch to your fork.
  5. Open a pull request against the main branch.

Example:

git switch -c fix/project-detection
git add .
git commit -m "fix: improve project detection"
git push --set-upstream origin fix/project-detection

Reporting bugs

Open an issue with:

  • A clear description
  • Steps to reproduce the problem
  • Expected and actual behaviour
  • Operating system
  • yoo version
  • Relevant command output

Open an issue

Clone this wiki locally