A workshop-booking and commerce platform on Next.js 14 (App Router), TypeScript, and Supabase (Postgres, Auth, Storage, RLS) — now taking live bookings and product orders. Razorpay checkout hardened with constant-time HMAC-SHA256 signature verification, ownership checks, and idempotency guards against replay, with an atomic Postgres RPC preventing seat oversell.
A workshop-booking and commerce platform on Next.js 14 (App Router), TypeScript, and Supabase (Postgres, Auth, Storage, RLS) — now taking live bookings and product orders.
Highlights
Shipped Offhanded end to end — a workshop-booking and commerce platform on Next.js 14 (App Router), TypeScript, and Supabase (Postgres, Auth, Storage, RLS) — now taking live bookings and product orders.
Hardened the Razorpay payment flow: constant-time HMAC-SHA256 signature verification, ownership checks, and idempotency guards against replay, with an atomic Postgres RPC preventing seat oversell.
Built a role-gated admin panel over six resources behind server-side authorization, and wired Resend transactional email to every confirmed booking and order.