< all projects

CoatCheckk

Smart coat check and locker rental for venues: scan a QR code, pay, and the locker opens. We built it through launch hardening and shut it down in 2026.

status
Wound down
role
Co-founder
when
2026
kind
Startup

Private code. Happy to walk through it on a call.

the TSPL2 that prints this label
SIZE 101.6 mm, 50.8 mm
GAP 3 mm, 0 mm
DIRECTION 1
CLS
TEXT 32,28,"4",0,1,1,"CoatCheckk"
TEXT 32,92,"2",0,1,1,"Startup"
TEXT 32,124,"2",0,1,1,"2026"
BARCODE 32,196,"128",120,0,0,1,2,"https://ansh.bhalala.org/projects/coatcheckk"
PRINT 1,1

What we built

  • A Go backend (connectrpc and Gin) on PostgreSQL and Redis, with a TanStack Start frontend.
  • Tuya IoT lockers, Stripe payments, Twilio SMS, and Resend email.
  • Staff and admin dashboards, reservations, inventory, and cron jobs for event-day operations.
  • Docker Compose with ACME for deploys.
  • A Laravel port of the locker rental side with NFC cards and 90+ Pest tests.

One decision worth noting

Partway through, we moved the Go server's auth from WorkOS to Clerk JWTs so it matched a second backend on Hono and Cloudflare Workers. That meant reworking middleware, token validation, and sessions across two runtimes.

Why it's here

It didn't survive, and I learned a lot from that. Real payments and real hardware taught me things I wouldn't have learned otherwise.

Built with

  • Go
  • TanStack Start
  • PostgreSQL
  • Redis
  • Stripe
  • Twilio
  • Tuya IoT
  • Laravel