Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Contributing

We’re actively looking for contributors. All skill levels welcome.

Getting started

git clone https://github.com/ojuschugh1/ghostdep
cd ghostdep
cargo test

If all tests pass, you’re ready to go.

Ideas

  • Add support for new languages (Ruby, PHP, C#, Swift, Kotlin…)
  • Expand the Java import-to-artifact mapping table
  • Improve monorepo package name extraction (read name from manifests)
  • Write a WASM plugin for a language you use
  • Document the WASM plugin API with an example
  • Add setup.cfg / setup.py support for Python
  • Improve the fix command for Maven/Gradle (direct manifest editing)
  • Write more property-based tests
  • Performance benchmarks on large codebases

Tests

Run the full suite:

cargo test

The test suite includes:

  • Unit tests (inline in each module)
  • Integration tests (invoke the binary against fixture projects in tests/fixtures/)
  • Property-based tests (proptest, in tests/property/)

Add tests for any new functionality. Property tests are preferred for correctness properties.

Pull requests

  • Keep PRs focused — one feature or fix per PR
  • Include tests
  • Make sure cargo test passes
  • Brief description of what and why

License

By contributing, you agree that your contributions will be licensed under the MIT License.