Settings

Theme

Show HN: Tag driven changelog generator (MDX) with optional LLM summaries

1 points by dustfinger 22 days ago · 1 comment · 1 min read


I built a tag-driven changelog generator for an OSS project I maintain and used it to backfill our 2025 docs changelog.

It walks git tags, finds merged PRs between releases, buckets them into categories, and renders MDX (Docusaurus in our case) organized by year -> month -> category -> version. There is an optional LLM mode that produces structured JSON via a Pydantic schema for PR entry and monthly summaries.

Example:

python .scripts/changelog/generate.py --year 2025 --github --ai --ai-model gpt-5.2 (or --help)

Gotcha: if you use --github, set GITHUB_TOKEN or you will most likely hit GitHub rate limits.

Repo script: https://github.com/confident-ai/deepeval/blob/main/.scripts/...

Disclosure: I maintain DeepEval. Happy to answer questions and take feedback.

dustfingerOP 22 days ago

I am curious what are people using for release notes in their own projects? Towncrier, GitHub Releases, something else?

If anyone tries my script on their repo and runs into issues, I am happy to help troubleshoot. Also, the output is actually plain Markdown (no JSX). The only Docusaurus specific bit is the YAML frontmatter header. If you are not using Docusaurus, you can just strip that header and rename .mdx to .md.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection