ContextZip is open source, MIT-licensed, and actively looking for contributors. If you've been wanting to contribute to a Rust project, here are concrete ways to start.
Good First Issues
1. Add a new CLI command pattern. ContextZip has 102 command-specific noise patterns. But there are thousands of CLI tools. If you use a tool that produces noisy output, adding its pattern is a great first contribution.
What you'd do:
- Add a test case with the raw output
- Add the expected filtered output
- Write the pattern match in Rust
Each pattern is typically 10-30 lines of Rust. The existing patterns serve as templates.
2. Improve stack trace detection for a language. ContextZip supports Node.js, Python, Rust, Go, Java, and C#. If you know a language whose framework paths aren't recognized, you can add them.
Example: adding Phoenix framework paths for Elixir tracebacks, or Rails paths for Ruby.
3. Add benchmark data. Run ContextZip on your real project and share the before/after numbers. Benchmark data from diverse projects helps us understand where ContextZip works well and where it needs improvement.
4. Documentation improvements. The README, examples, and inline docs can always be clearer.
The Test Suite
ContextZip has 1,056 tests. Every pattern has tests. Every filter has tests. When you add a new pattern, you add its tests too. The CI runs all tests on every PR.
git clone https://github.com/contextzip/contextzip
cd contextzip
cargo test
All tests should pass. If they don't, that's a bug worth reporting.
How to Start
cargo install contextzip
eval "$(contextzip init)"
Use it for a week. Notice which commands still produce noise. File an issue or open a PR.
GitHub: github.com/contextzip/contextzip
Part of the ContextZip Daily series. Follow for daily tips on optimizing your AI coding workflow.
Install: npx contextzip | GitHub: jee599/contextzip
Top comments (0)