Skip to content

Conventional Commits

Easy — everyone uses thisGit & Version Control

ELI5 — The Vibe Check

Conventional Commits is a format for writing commit messages that humans AND machines can understand. Every message starts with a type: 'feat: add dark mode', 'fix: login redirect loop', 'chore: update dependencies.' Tools can then auto-generate changelogs, determine version bumps (feat = minor, fix = patch), and make your git history actually useful instead of '47 commits titled "fix stuff".'

Real Talk

Conventional Commits is a specification for structured commit messages following the format type(scope): description. Types include feat (new feature → minor version), fix (bug fix → patch version), and others (chore, docs, refactor, test, ci). Breaking changes are indicated by ! after the type or a BREAKING CHANGE: footer. Tools like commitlint enforce the format, while semantic-release and changesets use it for automated versioning and changelog generation.

Show Me The Code

# Format: type(scope): description

feat(auth): add passkey login support
fix(api): handle null response from payment provider
refactor(ui): extract card component from dashboard
chore(deps): update next.js to 15.1
docs(readme): add deployment instructions

# Breaking change
feat(api)!: change auth endpoint response format

BREAKING CHANGE: /auth/login now returns { token } instead of { accessToken }

When You'll Hear This

"Use conventional commits so we can auto-generate the changelog." / "Is this a feat or a fix? If it adds behavior, it's feat. If it corrects behavior, it's fix."

Made with passive-aggressive love by manoga.digital. Powered by Claude.