Generate a changelog
Reach for conventional-changelog — the full-featured CLI and JS API. Following the Angular convention? standard-changelog is the same tool with that preset built in.
Conventional Changelog generates a CHANGELOG.md from your git metadata. You write commit messages that follow a convention — most commonly Conventional Commits — and the tooling parses that history, groups the commits into sections like Features and Bug Fixes, and links every entry back to its commit and release.
It is not a single package but a family of them: a command-line tool and JS API for the common case, the presets that encode each commit convention, and the smaller building blocks (a parser, a filter, a writer, a git client) that everything else is composed from.
Generate a changelog
Reach for conventional-changelog — the full-featured CLI and JS API. Following the Angular convention? standard-changelog is the same tool with that preset built in.
Decide the next version
conventional-recommended-bump reads the commits since your last tag and tells you whether the next release is a major, minor, or patch.
Conventional Changelog handles the changelog and the version recommendation. To automate the whole release — bumping the version, tagging, and publishing — combine it with simple-release, or its ready-made GitHub Action, simple-release-action: version bumps, changelog generation, and releases with first-class monorepo support, built on this project.
And to keep the commit history itself clean, Commitlint lints messages against the convention, while Commitizen offers an interactive prompt for writing them.
| Package | What it does |
|---|---|
conventional-changelog | Generate a changelog from git metadata — CLI and JS API. |
standard-changelog | conventional-changelog with the Angular preset built in. |
conventional-recommended-bump | Recommend the next semver bump from your commits. |
| Package | What it does |
|---|---|
conventional-changelog-conventionalcommits | The Conventional Commits preset. |
conventional-changelog-angular | The Angular commit convention preset. |
The lower-level packages the tools are composed from. You only need these when building custom release tooling.
| Package | What it does |
|---|---|
conventional-commits-parser | Parse raw commit messages into structured objects. |
conventional-commits-filter | Drop reverted (and reverting) commits. |
conventional-changelog-writer | Render parsed commits into changelog Markdown. |
conventional-changelog-preset-loader | Resolve and load presets by name. |
@conventional-changelog/git-client | Promise- and stream-based git client. |
@conventional-changelog/template | Shared changelog template helpers. |