Back to PortfolioVisit Live
Shipped SaaS

Next.js + Fastify SaaS — Viber Widget

$39 Lifetime License. Self-hosted chat widget micro-product with Stripe payments and domain-bound keys.

TypeScript · Next.js · Fastify · SQLite · Stripe

Core Implementations

Embeddable Widget (5KB)

TypeScript widget mounted in Shadow DOM for full CSS isolation. Fails silently on errors to never break the host page.

TypeScriptShadow DOMWeb Components

License Server (SQLite WAL)

Fastify backend serving bundles from RAM. Idempotent Stripe webhooks, auto-binding domain keys, and full refund handling.

FastifySQLite WALStripe API

Self-Serve Visual Editor

On-site editor where buyers configure their widget (avatar, colors, text) and copy the final script snippet instantly.

ReactLocalStoragePreview

Static Marketing Landing

Next.js 16 static export to eliminate server runtime. Handles traffic spikes purely through nginx without Node.js overhead.

Next.js 16Static ExportSEO

Zero-Touch Automation Loop

Visitor → Stripe Checkout → DB write → Resend Email → /thanks page with key all happens in 1–3 seconds automatically.

Resend APIWebhooksAutomation