First off, thank you for considering contributing to Web3 Student Lab! It's people like you that make Web3 Student Lab such a great learning tool for everyone.
If you've noticed a bug or have a feature request, make sure to check our Issues to see if someone else has already created a ticket. If not, go ahead and make one!
If this is something you think you can fix, then fork Web3 Student Lab and create a branch with a descriptive name.
Before committing, read Git Commit Guidelines for required commit prefixes and commit message format.
To contribute to the smart contracts, you'll need the following Rust tools:
- Rust & Cargo: Follow instructions at rust-lang.org.
- Clippy: Run
rustup component add clippy. - WASM Target: Run
rustup target add wasm32-unknown-unknown.
- Clone your fork locally.
- Run
npm installat the root path to set up Git hooks. - Run
npm installin bothfrontendandbackenddirectories. - Start the servers using
npm run dev.
At this point, you're ready to make your changes! Feel free to ask for help; everyone is a beginner at first.
[!IMPORTANT] Please review our Security Best Practices and CI/CD Pipeline Guide before making any changes related to secrets, sensitive data, or smart contracts.
At this point, you should switch back to your master branch and make sure it's up to date with Web3 Student Lab's master branch. Then, create a Pull Request against our main repository.
We will review your PR, and once approved, it will be merged into the project!