Thank you for considering contributing to Sparrow Bot! This document outlines the process for contributing to the project.
By participating in this project, you agree to abide by our Code of Conduct.
- Check if the bug has already been reported in the Issues section
- Use the bug report template to create a new issue
- Include detailed steps to reproduce the bug
- Include any relevant logs or screenshots
- Check if the enhancement has already been suggested in the Issues section
- Use the feature request template to create a new issue
- Clearly describe the problem and solution
- Explain why this enhancement would be useful
- Fork the repository
- Create a new branch (
git checkout -b feature/your-feature) - Make your changes
- Run tests (
npm test) - Commit your changes (
git commit -m 'feat: add some feature') - Push to the branch (
git push origin feature/your-feature) - Open a Pull Request
- Clone the repository
- Install dependencies:
npm install - Create a
.envfile based on.env.example - Run in development mode:
npm run dev
- Follow the TypeScript style guide
- Write tests for new features
- Update documentation for changes
- Follow the conventional commit format
- Run tests with
npm test - Ensure all tests pass before submitting a PR
- Add new tests for new features or bug fixes
- Update the README.md with any necessary changes
- Document new features or changes in behavior
- Update API documentation if applicable
We use the Conventional Commits format for commit messages:
<type>(<scope>): <description>
[optional body]
[optional footer]
Types:
- feat: A new feature
- fix: A bug fix
- docs: Documentation changes
- style: Code style changes (formatting, etc.)
- refactor: Code changes that neither fix bugs nor add features
- test: Adding or updating tests
- chore: Changes to the build process or auxiliary tools
- Update the README.md with details of changes if applicable
- Update the documentation with details of changes if applicable
- The PR should work for all supported Node.js versions
- The PR will be merged once it receives approval from maintainers
By contributing to Sparrow Bot, you agree that your contributions will be licensed under the project's MIT License.