Thank you for your interest in contributing to PhantomBet! 🎉
- Fork the repository
- Clone your fork
git clone https://github.com/YOUR_USERNAME/phantombet.git cd phantombet - Install dependencies
# Contracts cd contracts && npm install # CRE Workflow cd ../cre-workflow && npm install # Frontend cd ../frontend && npm install
feature/- New features (e.g.,feature/add-market-categories)fix/- Bug fixes (e.g.,fix/settlement-calculation)docs/- Documentation updatesrefactor/- Code refactoringtest/- Adding or updating tests
Follow the Conventional Commits specification:
<type>(<scope>): <description>
[optional body]
[optional footer]
Types:
feat: New featurefix: Bug fixdocs: Documentation changesstyle: Code style changes (formatting, etc.)refactor: Code refactoringtest: Adding or updating testschore: Maintenance tasks
Examples:
feat(contracts): add market category filtering
fix(frontend): resolve wallet connection issue
docs(readme): update installation instructions
cd contracts
npm test
npm run coveragecd frontend
npm test
npm run build- All PRs require at least one approval
- CI/CD checks must pass
- Code coverage should not decrease
- Follow existing code style and patterns
- Solidity: Follow Solidity Style Guide
- TypeScript/JavaScript: Use ESLint configuration provided
- React: Follow React best practices and hooks guidelines
- Never commit private keys or sensitive data
- Use
.env.exampleas a template - Report security vulnerabilities privately to the maintainers
- Update README.md if you change functionality
- Add JSDoc comments for complex functions
- Update ARCHITECTURE.md for architectural changes
Use the Bug Report template and include:
- Clear description
- Steps to reproduce
- Expected vs actual behavior
- Environment details
Use the Feature Request template and include:
- Problem statement
- Proposed solution
- Impact assessment
- Open a GitHub Discussion
- Check existing issues and documentation
- Join our community channels (if applicable)
By contributing, you agree that your contributions will be licensed under the MIT License.
Thank you for contributing to PhantomBet! 🎭✨