PatchNote Pal

PatchNote Pal turns messy release notes / changelogs into clean, user-specific updates.

  • Paste raw notes (or point it at a GitHub release)
  • Generate tailored outputs for QA, Support, and End Users
  • Built-in diff preview, export/copy, and lightweight templates
  • Optional custom taxonomy to map detected items into your own sections

Screenshots

TODO: add screenshots

  • docs/screenshots/app.png
  • docs/screenshots/custom-taxonomy.png
  • docs/screenshots/hotfix-template.png

Monorepo setup

This repo is a pnpm workspace with:

  • apps/web — Next.js UI
  • packages/core — parsing + normalization + generator
  • packages/types — shared TypeScript types
  • packages/config — shared eslint/prettier/tsconfig packages

Requirements

  • Node.js >= 18
  • pnpm >= 9

Getting started (local)

pnpm install
pnpm dev

Then open http://localhost:3000

GitHub fetching (serverless, avoids CORS)

The UI fetches GitHub releases via a Next.js route (/api/github/release) so the browser never hits api.github.com directly.

Optional env var (recommended to avoid GitHub rate limits):

  • GITHUB_TOKEN — a GitHub token (public repo access is enough)

Example:

cp .env.example .env
# or for Next.js:
cp .env.example apps/web/.env.local

One-click deploy (Vercel)

  1. Fork this repo
  2. Import into Vercel
  3. Set environment variables:
    • GITHUB_TOKEN (optional)
  4. Deploy

Vercel settings:

  • Framework preset: Next.js
  • Root directory: apps/web
  • Build command: pnpm -w build
  • Install command: pnpm install

Templates

  • Weekly Release: reusable header/footer for weekly cadence updates
  • Hotfix: incident-style structure (Impact / Mitigation / Fix included)

Custom taxonomy

Enable Custom sections to:

  • Define section names (e.g. Performance, Mobile, Integrations)
  • Map detected scopes (API/UI/Mobile/etc.) into those sections

Settings are stored locally in your browser.

Scripts

From the repo root:

  • pnpm dev — run the Next.js app
  • pnpm build — build all packages + app
  • pnpm test — run tests (Vitest)
  • pnpm lint — run ESLint
  • pnpm format — format via Prettier

Notes

@patchnote-pal/core is deterministic and does not require an LLM. (LLM integration may be added later.)

Description
PatchNote Pal turns messy release notes / changelogs into clean, user-specific updates. Paste raw notes (or point it at a GitHub release), then generate tailored outputs for QA, Support, and End Users with a diff-highlighted summary, risk callouts, and ready-to-send formats (Markdown, Slack, Zendesk).
Readme 98 KiB
Languages
TypeScript 99.3%
JavaScript 0.7%