First of all, thank you for considering contributing to rssn-advanced! We are thrilled to have you. This project aims to become a next-generation scientific computing ecosystem in Rust, and every contribution, no matter how small, helps us get there.
We are building a friendly, open community and are committed to helping you get started.
We welcome contributions across all areas of the project! Whether you are a seasoned Rust developer, a numerical methods expert, a student learning symbolic math, or just someone who wants to fix a typo, there is a place for you here.
If you have an idea, open an issue and we would be happy to discuss it!
We have designed the project to be as easy to set up as possible. You do not need any complex dependencies or special environment configuration.
-
Install Rust: If you don't have it already, install the Rust toolchain via rustup.
-
Fork and Clone: Fork the repository on GitHub and clone it to your local machine.
git clone https://github.com/YOUR-USERNAME/rssn-advanced.git cd rssn-advanced -
Build and Test: Check that everything is working correctly by running the test suite.
cargo test --all
That's it! You are now ready to start contributing.
-
Create a feature branch:
git checkout -b feature/my-new-feature
-
Write your code: Make your changes, and please add tests for any new functionality or bug fixes!
-
Code style & formatting:
-
All code must compile with zero warnings on the latest stable Rust.
-
Additional lint rules are configured in
lib.rsand must be respected. -
Before creating a pull request, please always run:
cargo +nightly fmt --all cargo clippy --all-targets -- -D warnings cargo test --all
-
-
Commit and Push:
Commit your changes with a clear message and push them to your fork.
git commit -m "feat(symbolic): add new integration method" -
Open a Pull Request: Open a PR against the
mainbranch of theApich-Organization/rssn-advancedrepository. Please provide a clear description of your changes.
Contributors are credited in release notes and on the GitHub page. We value every contribution, from fixing typos to implementing new solvers.
Thank you for making rssn-advanced better!