Bilal Gokdag
Back to Projects

Kalpkodu — Personalized Memory Site

A gift-and-story SaaS: pick a theme, add photos and a letter, get a personal site plus a printable QR code that opens it — no app, no login needed.

✓ SEO Friendly✓ Mobile Responsive✓ Admin Panel Included✓ Custom Software
Kalpkodu — Personalized Memory Site - Main image
Kalpkodu — Personalized Memory Site - Screenshot 2
Kalpkodu — Personalized Memory Site - Screenshot 3
Kalpkodu — Personalized Memory Site - Screenshot 4

Overview

Kalpkodu is a gift-and-story SaaS inspired by a manual "QR poster + personal website" product I saw being sold through Instagram DMs and Canva templates. It turns that one-at-a-time, custom-design-per-order workflow into a self-serve platform: pick a theme, fill in your story, upload photos, and get a personal site plus a printable QR code that opens it — no app install, no login required for the recipient.

Key features

  • 5 distinct themes — Stars, Love Letter, Cinema, Song, and Newspaper Headline, each with its own color palette, icon, and tone rather than a single reskinned template.
  • Guided 5-step wizard — theme → content → photos → live preview → order confirmation, so the whole site is ready in minutes.
  • Server-generated QR codes — every published site gets a downloadable PNG QR code generated on the server, no third-party QR service involved.
  • Owner preview gate — the creator can view and share their site before it's live; everyone else sees a "coming soon" placeholder until the order is approved.
  • Manual order approval — orders land as "pending"; an admin panel lets the operator approve or cancel them, which publishes the site and emails the buyer automatically.

Tech stack

Next.js (App Router) · TypeScript · Tailwind CSS · shadcn/ui · Prisma ORM · PostgreSQL (Neon) · Auth.js v5 · Zod · React Hook Form · Vercel Blob · Resend

Architecture notes

Each theme is a small config object (colors, icon, tagline) consumed by one shared story-site renderer, so adding a new theme is a data change, not a new page. QR codes are generated on-demand server-side from the site's public URL using the qrcode package — no external QR API dependency, no expiry.

Deployed on Vercel with a Neon Postgres database provisioned through the Vercel Marketplace integration.