Thank you for your interest in contributing to this project! We welcome contributions from everyone and appreciate your help in making this project better.
Use the Setup Guide to setup your environment.
Always create a new branch for your work:
git checkout -b feature/short-descriptionBranch naming conventions:
feature/- New featuresfix/- Bug fixesdocs/- Documentation updatesrefactor/- Code refactoringtest/- Test additions or modificationschore/- Maintenance and tooling
- Keep changes focused and atomic
- Follow the existing code style and conventions
- Run linters/formatters and tests before committing
- Add tests for new features and bug fixes
- Ensure all tests pass
- Always improve test coverage
Follow conventional commits format
type(scope): subject
body
footer
Type: feat, fix, docs, style, refactor, perf, test, chore
Examples:
feat(auth): add login functionalityfix(api): resolve timeout issuedocs: update README
- Use the imperative mood ("add feature" not "added feature")
- Don't capitalize the subject line
- Keep the subject line under 50 characters
- Reference issue tickets (e.g.,
Closes #123)
-
Push your branch to your fork:
git push origin feature/short-description
-
Create a Pull Request with:
- Clear title and description
- Reference to related issues
- Explanation of changes and why they were made
-
Ensure CI/CD checks pass
-
Address review feedback promptly
- Follow the existing code conventions in the repository
- Write meaningful variable and function names
- Add comments for complex logic
- Update
README.mdfor significant changes - Add inline code comments for complex logic
- Update changelog (
CHANGELOG.md) for notable changes - Keep documentation up-to-date with code changes
Include:
- Clear description of the bug
- Steps to reproduce
- Expected behavior
- Actual behavior
- Environment details (OS, Node version, etc.)
- Error messages or screenshots
Include:
- Clear description of the proposed feature
- Motivation and use cases
- Potential implementation approach (optional)
- Examples if applicable
- Be respectful and inclusive
- Assume good intent
- Provide constructive feedback
- Help others in the community
- Report code of conduct violations to [EMAIL]
By contributing to this project, you agree that your contributions will be licensed under its license (see License).
Feel free to:
- Open an issue for questions
- Check existing discussions
- Reach out to maintainers
Happy contributing!