Better Changelog — Change Audit System

Status: Spec complete, building
URL: changelog.someshovels.com
Notion: Look up “Release log/Change log SaaS” in projects DB

What It Is

NOT just a changelog — it’s an audit system. Most tools optimize for “what’s new today”; this optimizes for “what changed when” (compliance/audit use case).

5-axis taxonomy: What (custom categories) Ă— Why (reason) Ă— Impact Ă— Where (module) Ă— When

Repos & Local

  • Org repo: project-shovels/better_changelog
  • Personal fork: Chaoticonomist/better_changelog (for Vercel)
  • Local: /root/clawd/better_changelog/ and /tmp/better_changelog/

Tech Stack

  • Next.js 16.0.7, TypeScript
  • Turborepo monorepo
  • Drizzle ORM
  • PostgreSQL (Neon, AWS US East)
  • Clerk auth
  • Tailwind + shadcn/ui

Hosting

  • Vercel (free tier, CLI deploy)
  • Project: adams-projects-a157b046/web
  • Deploy: cd apps/web && vercel deploy --prod --yes --token=$(cat /root/.vercel-token)

Credentials

  • DB credentials: /root/.changelog-env
  • Vercel token: /root/.vercel-token
  • Clerk: Production instance domain-locked to someshovels.com

Notes for future sessions:

  • Database uses TEXT IDs (not UUID), inserts need explicit id: randomUUID()
  • Schema regenerated from actual DB structure (Drizzle definitions didn’t match)
  • Table renamed: entries → changelog_entries
  • Direct DB queries work better than external API calls (no Railway backend)
  • Build with: npx next build in apps/web/
  • Adam’s use case: embeddable widget for logged-in users, audience levels (public/auth/internal)