{
  "id": 16382508,
  "title": "Lazy Changelog, where Gemma writes your release notes inside the browser",
  "url": "https://urgent.news/2026/10/24/lazy-changelog-where-gemma-writes-your-release-notes-inside-the",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-10-24T22:45:54.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/joesimo/lazy-changelog-where-gemma-writes-your-release-notes-inside-the-browser-5hh8"
  },
  "original_language": "en",
  "account": "This submission for the Hacktoberfest Open-Source AI Challenge Week 3 introduces Lazy Changelog, a tool that automatically generates release notes from git commit logs. The process begins with running a single command to retrieve the commit history using `git log --oneline $( git describe --tags --abbrev=0 ) ..HEAD`. The resulting log is then parsed, grouping commits into categories such as New, Fixed, Faster, Docs, and Behind the scenes. Commit prefixes, gitmoji, [tags], hashes, and PR numbers are stripped from the log, while breaking changes are placed at the top. Unnecessary commits, including merges, version bumps, and wip and fixup! commits, are also removed to create a clean, concise draft for users.\n\nThe generated draft is then processed by Gemma 3 1B, a large language model running entirely in the browser. This model rewrites each New, Fixed, and Faster line in plain, human-readable language, one at a time. Once loaded, the model requires no further interaction, as its weights are cached for subsequent runs. Users can access a live demo of the tool at https://lazy-changelog.vercel.app, where they can load a sample log, try Gemma 3 1B, and see the original commit log alongside the rewritten release notes. The tool operates entirely offline, preserving users' privacy by not sending any data to external servers.",
  "summary": "This is a submission for the Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady What I Built Release notes are the chore that always gets skipped. Everything users need to know is already in the commits, but it is written for the person who made the change: fix(ui): dark mode toggle not persisting after refresh . Turning that into \"Dark mode toggle persists after refresh\" for thirty…",
  "key_points": [
    "Lazy Changelog generates release notes from git commit logs.",
    "Gemma 3 1B rewrites notes in plain language.",
    "Tool operates offline, preserving user privacy."
  ],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}