Changelog Generator

Writing changelogs by hand means combing through git log at release time. This generator skips that step: you paste the entries you want to publish directly under the right category, Added, Changed, Fixed and Removed, add a version number and a date, and it outputs a Keep a Changelog style markdown section ready to drop into CHANGELOG.md. The same content can also be produced as plain text. It does not read your git history; you decide which changes make the release.

How to generate a changelog

  1. 1

    Enter the version and date

    Type the version number, for example 1.2.0. Leave the date blank to use today.

  2. 2

    Add entries per category

    Paste the release notes under Added, Changed, Fixed and Removed, one item per line. Empty categories are skipped.

  3. 3

    Choose the output format

    Markdown (a `## [version] - date` header with `### Added` style sections) or plain text (a `v1.2.0 (date)` header with bulleted lists).

  4. 4

    Copy the changelog

    Paste the output above the previous entry in CHANGELOG.md.

The four categories

The generator emits exactly four sections, in this order: Added, Changed, Fixed and Removed.

Category When to use
Added New features
Changed Changes to existing functionality
Fixed Bug fixes
Removed Features that have been removed

The Keep a Changelog convention also knows Deprecated, Security and Breaking sections. The generator does not have boxes for them; you can still add those sections by hand after pasting the output.

Example output (Markdown)

## [1.4.0] - 2026-04-18

### Added
- Dark mode support for the dashboard (#312)
- CSV export on the users page (#318)

### Changed
- Upgrade React to 18.3 (#320)
- Pagination now defaults to 50 items per page (#322)

### Fixed
- Crash when editing users with a null email (#319)
- Timezone offset in scheduled reports (#321)

### Removed
- Legacy reports API (#324)

Example output (plain text)

v1.4.0 (2026-04-18)
ADDED:
  • Dark mode support for the dashboard (#312)
  • CSV export on the users page (#318)
CHANGED:
  • Upgrade React to 18.3 (#320)
  • Pagination now defaults to 50 items per page (#322)
FIXED:
  • Crash when editing users with a null email (#319)
  • Timezone offset in scheduled reports (#321)
REMOVED:
  • Legacy reports API (#324)

Tips

  • One item per line. Every line in a box becomes one bullet. Empty boxes are skipped, and you can leave categories out entirely.
  • Write entries as the changelog lines, not as log notes. The imperative “fix: handle null email on edit” reads well as a bullet.
  • Reference issue/PR numbers so readers can drill in: (#319) or [#319](link) in the output.
  • One version per entry: don’t merge two releases into one block, even if they’re a day apart.
  • Released vs unreleased: keep an [Unreleased] section at the top with changes destined for the next version. Move them to a dated section on release.

Frequently Asked Questions

The Keep a Changelog (keepachangelog.com) conventions: a version header with a date and grouped bullet lists. The generator emits the Added, Changed, Fixed and Removed sections; the other standard sections (Deprecated, Security, Breaking) follow the same convention if you add them by hand.

The generator outputs the four main sections: Added, Changed, Fixed and Removed. There are no dedicated boxes for Deprecated, Security or Breaking, but you can add those sections manually to the generated text before pasting it.

The generator is a one-shot UI tool; for automation use a CLI like standard-version, release-please or semantic-release, which implement the same patterns in your build pipeline.

No. It does not read your repository or your commit messages; you paste the entries yourself. The text you type is sent to the server so the output can be built, and it is not stored or shared.

Related Tools