DEV Community

chahine benlahcen
chahine benlahcen

Posted on

I built a changelog tool on Cloudflare Workers in a weekend — here's the stack

I got tired of every changelog tool being either bloated, expensive, or ugly.
So I built Shiplog — a lightweight changelog-as-a-service that runs entirely on the edge.

What it does

  • Public changelog page per project (/changelog/your-project)
  • Embeddable widget — one script tag, no iframe
  • RSS feed out of the box
  • REST API to publish from scripts or CI/CD
  • Custom domain support (Pro)

The stack

Hono — micro framework for Cloudflare Workers. Handles routing, middleware, and API endpoints. Incredibly fast to write and deploy.

Inertia.js + React 19 — server-driven SPA without building a separate API. The server renders the initial page, React takes over on the client. No context switching between backend and frontend.

Cloudflare Workers + D1 — runs globally on the edge, SQLite via D1. Zero cold starts, free tier is generous. Drizzle ORM for queries.

Better Auth — GitHub + Google OAuth in about 20 lines of config.

Stripe — billing with webhooks. Free plan (1 project, 10 posts), Pro at $9/mo.

The interesting part — embedding

The widget is a plain <script> tag:

<script src="https://shiploghq.app/widget.js" data-slug="my-app" defer></script>
Enter fullscreen mode Exit fullscreen mode

It fetches posts from /api/changelog/:slug and injects a small UI into the page. No iframe, no external stylesheet.

Publishing from CI

curl -X POST shiploghq.app/api/posts \
  -H "Authorization: Bearer sk_..." \
  -d '{"projectSlug":"my-app","title":"v1.2.0","content":"..."}'
Enter fullscreen mode Exit fullscreen mode

→ shiploghq.app — free to start, no credit card needed.

Would love feedback, especially from anyone who's used Headway, Beamer, or similar tools.

Top comments (0)