First off, thank you for considering contributing to PayChain! It's people like you that make PayChain such a great tool for decentralized payroll.
By participating in this project, you are expected to uphold our Code of Conduct. Please be respectful and constructive in all communication.
If you find a bug, please create an issue on GitHub. Include:
- A clear and descriptive title.
- Steps to reproduce the issue.
- Expected vs. actual behavior.
- Screenshots if applicable.
- Your environment details (OS, Node version, browser, etc.).
Enhancement suggestions are welcome! Create an issue with:
- A clear description of the feature.
- Why this enhancement would be useful.
- Potential implementation details if you have them in mind.
We gladly accept pull requests. To contribute code:
- Fork the Repository: Fork the repo and create your branch from
main. - Setup Development Environment: Follow the Quick Start guide in the README.
- Make Your Changes:
- Write clear, commented, and testable code.
- Follow the existing code style (we use ESLint and Prettier).
- Ensure your changes do not break existing functionality.
- Commit Your Changes:
- Use conventional commits (e.g.,
feat: add stellar wallet integration,fix: resolve jwt verification bug).
- Use conventional commits (e.g.,
- Run Tests: Ensure all tests pass and the application builds successfully (
npm run build). - Submit a PR: Open a pull request against the
mainbranch. Provide a detailed description of your changes in the PR template.
PayChain is a monorepo. Please ensure you are working in the correct directory:
apps/frontend: For UI/UX and React/Next.js changes.apps/backend: For API, database schema (Prisma), and core business logic.contracts: For blockchain smart contracts (Rust).
- Feature branches:
feature/your-feature-name - Bugfix branches:
fix/your-bugfix-name - Refactor branches:
refactor/what-you-refactored - Documentation:
docs/update-readme
If your PR requires a database schema change:
- Update
apps/backend/prisma/schema.prisma. - Run
npm run db:pushlocally to test. - Ensure you mention the schema change prominently in your PR description.
All pull requests will be reviewed by the maintainers. We may request changes or provide feedback. Once the review is approved and CI checks pass, your PR will be merged.
Thank you for contributing to PayChain! 馃殌