Thank you for your interest in contributing to Stakcast! 🚀
We welcome contributions of all kinds, whether it's fixing bugs, improving documentation, or adding new features.
Please follow this guide to ensure a smooth contribution process.
- Code of Conduct
- Getting Started
- Setting Up the Development Environment
- Working on the Cairo Smart Contracts
- Making Changes
- Submitting a Pull Request
- Reporting Issues
By contributing, you agree to have read our getting Started Getting Started.
Please read it before making any contributions.
Before contributing, ensure you have the following installed:
- Node.js
- Git
- A code editor (e.g., VS Code)
- Cairo Language
- pnpm
We use pnpm workspaces for package management and Husky for git hooks enforcement.
For detailed setup instructions, refer to GettingStarted.md.
- Fork the Repository
- Clone Your Fork
- Install Dependencies
- Start the Development Server
For detailed instructions, refer to GettingStarted.md.
Stakcast includes smart contracts written in Cairo for deployment on StarkNet. Follow these steps to contribute to the contract code:
- Install Scarb (Cairo's package manager)
curl -L https://raw.githubusercontent.com/software-mansion/scarb/master/install.sh | bash - Verify Installation
scarb --version
- Compile the Contracts
Navigate to thecontractsfolder and run:cd contracts scarb build - Run Tests
snforge test
-
Create a Feature Branch
We use feature branches for all new changes. Please create one before making any modifications:git checkout -b feature-branch-name
-
Make Your Changes
- Write code, add tests if applicable, and update the documentation.
- Ensure your changes follow the project's coding style.
-
Run Tests
pnpm test -
Commit Your Changes
git add . git commit -m "Describe your changes"
Husky will run pre-commit hooks to enforce formatting and linting.
-
Push Your Changes
git push origin feature-branch-name
-
Create a Pull Request
- Go to the Pull Requests page.
- Click "New Pull Request."
- Provide a clear title and description.
-
Wait for Review
A maintainer will review your pull request and provide feedback.
If you encounter a bug or have a feature request, please open an issue. Your issue should include:
- A clear description of the problem or feature request.
- Why the change is necessary.
- Steps to reproduce the issue (if applicable).
- Avoid unnecessary long, AI-generated descriptions—keep it concise and relevant.
- When applying to an issue, mention your estimated ETA.
- We expect a draft PR within 48 hours of assignment, even if it's incomplete—this shows progress has started.
Thank you for contributing to Stakcast! 🎉