Conventional Commits
This project follows the Conventional Commits specification for commit messages.
Commit Format
type(scope): description
[optional body]
[optional footer]
Commit Types
Use one of these types:
feat- A new featurefix- A bug fixdocs- Documentation only changeschore- Maintenance tasks, dependency updates, config changesrefactor- Code restructuring without changing behaviortest- Adding or updating testsstyle- Formatting, whitespace, missing semicolons (no code change)perf- Performance improvementsci- CI/CD configuration changesbuild- Build system or external dependencies changes
Scope
Scope is optional but recommended for monorepo projects. Use workspace/app names:
cms- CMS/Payload changesclients- Clients app changeslawyers- Lawyers app changeswebsite- Website app changespackages- Shared package changes
Examples:
feat(cms): add new collectionfix(clients): resolve form validation issuedocs(website): update API documentation
Description
- Use imperative mood ("add" not "added" or "adds")
- Lowercase first letter (unless starting with proper noun)
- No period at the end
- Keep it concise (50-72 characters recommended)
Examples
Good:
feat: introduce editors field for enhanced content management
docs: add AI Elements skill for manual component installation
fix: add CollectionCards to import map for UI components
refactor: simplify AI chat components and enhance conversation handling
chore: update dependencies and configurations for CMS packages
feat(cms): add new blog post collection
fix(clients): resolve authentication token expiration
Bad:
Added new feature
fix bug
Update README.md
feat: Added new feature for users
fix(clients): Fixed the bug that was causing issues
When to Use Each Type
feat - New functionality that users will notice fix - Bug fixes that resolve incorrect behavior docs - README, comments, documentation files chore - Package.json updates, lock files, config tweaks refactor - Restructuring code without changing what it does test - Test files only style - Code style changes (formatting, whitespace) perf - Performance optimizations ci - GitHub Actions, CI config files build - Build tools, bundlers, transpilers
Multi-line Commits
For complex changes, use body:
feat(cms): add draft/publish workflow
- Add draft status field to collections
- Implement publish endpoint
- Add validation for draft content