This document outlines the coding standards and contribution guidelines for the Dabia project.
We follow the Conventional Commits specification. This helps in creating a clear and structured git history.
<type>[optional scope]: <description>
[optional body]
[optional footer(s)]
feat: A new featurefix: A bug fixdocs: Documentation only changesstyle: Changes that do not affect the meaning of the code (formatting, missing semi-colons, etc)refactor: A code change that neither fixes a bug nor adds a featureperf: A code change that improves performancetest: Adding missing tests or correcting existing testsbuild: Changes that affect the build system or external dependenciesci: Changes to CI configuration files and scriptschore: Other changes that don't modify src or test filesrevert: Reverts a previous commit
- Conciseness: Keep the description (first line) concise. One sentence is usually enough.
- Language: All commit messages must be in English.
- No Chinese Characters: Do not use Chinese characters in the commit history.
- Lowercase: The
<type>and<description>should be in lowercase. - Imperative: Use the imperative mood in the description (e.g., "add feature" instead of "added feature").
- Language: All code and comments must be in English.
- Linting: Ensure code passes linting checks before committing.
- Testing: Run all relevant tests before pushing changes. New features should include corresponding tests.
- Use Alembic for all database schema (DDL) and seed data updates.
- Do not modify existing migration files; always create a new migration.
- Use placeholder or anonymous data for seed data to protect privacy.