Thank you for your interest in contributing to this project! By following these guidelines, we can maintain an organized, efficient, and positive collaboration for the entire community.
If you encounter a bug or unexpected behavior:
- Open an issue in the repository.
- Include a clear description of the problem.
- Explain the steps to reproduce it.
- Attach screenshots or error logs if possible.
- Specify the version and environment where it occurs (OS, browser, etc.).
If you have ideas to improve the project:
-
Open an issue with the
enhancementlabel. -
Explain your proposal in detail:
- Objective of the improvement.
- Benefits for the project.
- Possible drawbacks or risks.
-
If possible, suggest a draft implementation.
To submit code changes:
-
Fork the repository.
-
Create a branch for your change:
git checkout -b feature/new-feature
-
Make your changes and write clear commits:
git commit -m "Add new feature X" -
Push your changes to your repository:
git push origin feature/new-feature
-
Open a Pull Request in the main repository.
-
In the PR:
- Describe the change.
- Indicate if there are new dependencies.
- Include tests or examples if applicable.
To maintain code consistency:
- Use descriptive names for variables, functions, and classes.
- Comment code where necessary.
- Apply the project’s code formatting (e.g., Prettier or ESLint).
- Avoid introducing unused code or console.log in PRs.
- Ensure the code passes all automated tests before submission.
- Pull Requests will be reviewed by the project maintainers.
- Respond to comments and make requested changes.
- Approval may require at least two reviewers to accept the PR (depending on repository policy).
- Large PRs can be split into smaller parts for easier review.
- If adding new features, include unit tests and/or integration tests.
- Ensure that all existing tests pass before submitting your PR.
- If the project uses code coverage (e.g.,
vitest), maintain or improve the current percentage.
- Update documentation if your change introduces or modifies functionality.
- Include usage examples if relevant.
- If it’s an API or library, update type definitions and JSDoc/TypeDoc comments.
-
Use atomic commits: one commit = one logical change.
-
Prefer imperative commit messages:
- ✅
"Fix string color error" - ❌
"Fixed error"
- ✅
-
Avoid unnecessary merge commits; use
rebasewhen appropriate.
This project follows the Code of Conduct. By contributing, you agree to adhere to and respect these rules of community behavior.
- All contributions are welcome: code, documentation, reports, and suggestions.
- We will publicly acknowledge contributors who make significant improvements.