Skip to content

Free tool · Release notes

Release notes generator

Paste commit messages or a plain list of changes and get release notes grouped into New, Improved, and Fixed, ready to copy as Markdown, plain text, or HTML.

Runs in your browser. Nothing you enter is uploaded, and there's no sign-up.

Commit messages, a bullet list, or git log --oneline output.

Options

Sort this line

It has no prefix or heading, so pick where it goes.

Preview

Faster dashboards and CSV exports

Version 2.4.0

New

  • Reports: Export any report to CSV
  • Invite teammates with a shareable link

Improved

  • Dashboards load about twice as fast on large accounts

Fixed

  • Billing: Invoices now show the correct tax rate
  • Search keeps your filters when you go back

Other changes

  • Dark mode now follows your system setting

How the generator sorts your lines

Each line becomes one item. The generator only sorts lines that say where they belong, using formats developers already write. It never guesses from the wording.

  • feat: goes to New, fix: to Fixed, and perf: or refactor: to Improved. These are Conventional Commits prefixes. A scope in brackets, like feat(reports):, becomes a label on the item.
  • A ! after the type, as in feat!:, or a line starting with BREAKING CHANGE:, goes to Breaking changes.
  • docs:, test:, build:, ci:, style:, and chore: go to Maintenance, which is left out unless you include it. Git merge lines go there too.
  • Section labels work as a prefix, like Fixed: at the start of a line, or as a heading line above a group, like ## Fixed. New, Added, Improved, Changed, Fixed, Security, Removed, and Breaking changes are recognized.
  • Anything else lands in Other, where you pick a group for each line or leave it out.

Bullets, numbering, and the short hashes from git log --oneline are removed, and each item starts with a capital letter.

Writing release notes people read

Release notes are for the people who use your product, not for the team that built it. A few habits keep them useful:

  • Lead with what someone can do now. "Export any report to CSV" says more than "Added CSV export endpoint".
  • Keep one change per line, so each item can be scanned on its own.
  • Put breaking changes first and say what people need to do about them.
  • Leave internal work out. Refactors and dependency bumps matter to your team, not to most readers.
  • Link to the docs for anything that needs more than a sentence.

Where to publish them

Markdown works in GitHub releases, a CHANGELOG.md file, and most docs tools. The HTML snippet pastes into a CMS or an email. To reach people while they use your product, publish the notes inside it.

Last reviewed

Questions about the release notes generator

release-notes-generator.md
Does this use AI?

No. It sorts lines by fixed, visible rules: commit prefixes, section labels, and headings. The same input always gives the same output, and anything it can't place goes to Other for you to sort.

Do I have to write Conventional Commits?

No. Plain lines work too. Add a label such as Fixed: in front of a line, put lines under a heading such as ## New, or sort them by hand in the Other list.

Can I paste output from git log?

Yes. Run git log --oneline for the range you want and paste the result. The short commit hashes at the start of each line are removed, and merge commits go to Maintenance.

What's the difference between release notes and a changelog?

A changelog is the running record of every change across versions. Release notes describe one release for the people who use it, usually with less detail and more context. This generator writes release notes for one release at a time.

Can I use the output on GitHub?

Yes. Copy the Markdown into a GitHub release description or the top of a CHANGELOG.md file. The headings and bullet lists render as written.

Is my text uploaded anywhere?

No. Everything runs in your browser. Nothing you paste is sent to ReleaseDock or anyone else, and downloads are created on your device.

markdown6 entries