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>
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":"..."}'
→ 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)