To maintain consistency and clarity in the project, the following commit message naming convention should be followed for all commits in the project consisting of web, libraries, and apps.
<type>(<scope>): <message>
Where:
<type>: The type of change (describes what was done).<scope>: (Optional) The part of the application affected by the change (e.g.,frontend,backend,library).<message>: A short description of the change.
Use the following standard types to describe the purpose of the commit:
feat: Adding new functionality.fix: Fixing a bug.docs: Documentation updates.style: Changes that do not affect functionality (e.g., code formatting, indentation).refactor: Code refactoring that does not fix a bug or add a feature.test: Adding or modifying tests.chore: General tasks such as updating dependencies, build settings, etc.ci: Changes to CI/CD configuration.build: Changes related to the build system or dependencies.perf: Improving performance.wip: Work in progress (commit to save progress).
feat(frontend): add new button componentfix(frontend): fix issue with button clickstyle(frontend): align text in the buttonrefactor(frontend): refactor file structuredocs(frontend): update documentation for components
feat(backend): add new authentication endpointfix(backend): fix token validation issueperf(backend): optimize database querieschore(backend): update backend dependenciestest(backend): add tests for new endpoint
feat(library): add utility for string manipulationfix(library): fix bug in JSON parserchore(library): update library documentation
- The main message should be no longer than 72 characters to improve readability in git logs and outputs.
- Commit messages should be written in the present tense. For example, use:
Add new functionality- Not
Added new functionality
feat(frontend): add registration form component fix(backend):
fix issue with saving data to the database
refactor(library): refactor report generation function
docs(frontend): update documentation for form components