Keep a Changelog generator
Paste Conventional Commits and get a Keep a Changelog section for CHANGELOG.md: Added, Changed, Deprecated, Removed, Fixed and Security, with the version and date. Runs in your browser.
Free · Runs in your browserHow to use it
Paste your commits
Conventional Commits since the last release; git log --oneline output works.
Set version and date
Or leave the version empty for an Unreleased section. Add the previous tag for a compare link.
Copy the section
Paste it at the top of CHANGELOG.md, under the header.
The Keep a Changelog format
Keep a Changelog is a widely used convention for CHANGELOG.md: newest version first, an ISO date (YYYY-MM-DD) on each version, an Unreleased section at the top, and changes grouped under six headings:
- Added for new features, Changed for changes in existing behaviour.
- Deprecated for soon-to-be removed features, Removed for removed ones.
- Fixed for bug fixes, Security for vulnerabilities.
How commits are mapped
feat goes to Added and fix to Fixed. perf, refactor and revert go to Changed. Subjects that start with “remove” or “drop” go to Removed, mentions of deprecation to Deprecated, and security fixes (a security scope, a CVE, XSS and so on) to Security. Breaking changes are marked. Docs, tests, CI and chores are left out unless you include them, because a changelog is for people who use the project, not a copy of the git log.
Edit before you commit
Commit subjects are written for reviewers. Reword entries for users where it helps: describe fixes by the symptom people saw. For a prose version of the same release, try the release notes generator.
Questions about this tool.
01Should I write the changelog by hand or generate it?
Generate the first draft from good commits, then edit. Keep a Changelog warns against dumping git logs, which is why chores are left out and entries are grouped.
02What goes in the Unreleased section?
Changes merged but not yet released. When you release, rename it to the version and date and start a new Unreleased section.
03Where do the compare links go?
At the bottom of the file. With a repository URL and previous tag, the tool writes the link for this version.
04Is my input sent anywhere?
No. The generator runs entirely in your browser.
More free tools
All toolsOr let every release announce itself.
DevRelay writes a changelog entry for every release from the diff itself, checked against it, alongside the X and LinkedIn posts, all waiting for your approval.
No credit card · Nothing posts without your approval