Skip to content

Latest commit

 

History

History
68 lines (47 loc) · 2.43 KB

File metadata and controls

68 lines (47 loc) · 2.43 KB

Contributing to Project Navi

Thanks for wanting to help. Here's how to do it without making anyone's life harder.

Before You Start

  1. Read the relevant docs — Understand DSC, WMC, REO, or whichever pillar relates to your contribution.
  2. Check existing issues — Someone may already be working on what you have in mind.
  3. Open an issue first — For significant changes, discuss your approach before writing code.

The Basics

  1. Fork the repo
  2. Create a branch (git checkout -b feature/your-thing)
  3. Make your changes
  4. Test them (seriously, please test)
  5. Open a PR

What Makes a Good PR

  • Does one thing — Don't bundle unrelated changes
  • Has a clear title — "Fix X" or "Add Y", not "Updates"
  • Explains why — The what is in the code; tell us the why
  • Doesn't break things — Run the tests before submitting

What We're Looking For

  • Bug fixes (always welcome)
  • Documentation improvements (very welcome)
  • Performance improvements (show benchmarks)
  • New features (open an issue first to discuss)
  • Research contributions (if extending DSC/WMC/REO mathematics, include formal definitions)

What We're Not Looking For

  • Massive refactors without discussion
  • "Improvements" that add complexity without clear benefit
  • Formatting-only changes (unless there's a real reason)
  • Features that solve problems nobody has

Code Style

  • Keep it simple
  • Prefer clarity over cleverness
  • If you need a comment to explain it, maybe simplify it
  • Follow the existing patterns in the codebase
  • TypeScript/JavaScript: Use TypeScript where available
  • Python: PEP 8, type hints preferred
  • Commits: Conventional commits format (feat:, fix:, docs:, etc.)

Licensing

By contributing, you agree that your contributions will be licensed under the same terms as the project:

If you're contributing on behalf of an organization, ensure you have authority to do so.

Questions?


The best contribution is one that makes the codebase simpler, not more complex.