Smart Commit
Create a high-quality commit for current changes.
Pre-Commit Checklist
Scope Check
- [ ] Solves one problem only
- [ ] No unrelated changes
- [ ] No debug code
- [ ] No temporary files
Quality Check
- [ ] All tests pass
- [ ] Code is formatted
- [ ] No linting errors
- [ ] Documentation updated
Commit Message Format
<type>(<scope>): <description>
<body>
<footer>
Type (Required)
| Type | Use When | |------|----------| | feat | New feature (user-visible) | | fix | Bug fix | | docs | Documentation only | | test | Adding/updating tests | | refactor | Code restructure (no behavior change) | | style | Formatting (no logic change) | | chore | Maintenance, dependencies | | perf | Performance improvement |
Scope (Optional)
Module, component, or file affected:
feat(auth): add login endpointfix(api): handle null responsedocs(readme): update installation steps
Description (Required)
- 50 characters or less
- Present tense, imperative mood
- Lowercase first letter
- No period at end
- Describe WHAT, not HOW
Examples
Feature
feat(user): add email verification
Implement email verification flow for new user registration.
Users must verify email before accessing protected features.
Closes #42
Bug Fix
fix(api): handle null response in user endpoint
Previously threw uncaught exception when user not found.
Now returns 404 with proper error message.
Fixes #67
Commit Checklist
Before committing:
- [ ] Follows Conventional Commits format
- [ ] Subject clearly describes the change
- [ ] One commit = one logical change
- [ ] No sensitive information (.env, credentials)
- [ ] All tests pass