Range Solo — full stack, in production · Personal project · Live

A full platform for an NGO, shipped solo

A public site plus a portal that runs an entire program's lifecycle — application to logistics to payments — with automated messaging at every step. Built and deployed end to end, alone.

Next.js 14FastAPISupabaseGupshupDockerRailway

The problem

Prabhu Premi Trust is a women-led NGO. They run a pilgrimage program — the CC7 “Jatra” — with a real participant lifecycle: people apply, get selected, receive credentials, manage a profile and status, get assigned rooms and logistics, and submit payment proofs. All of it was being coordinated by hand, across messages and spreadsheets, and none of it scaled.

What I built

An end-to-end system, alone, in production:

The stack is deliberately unremarkable, because that’s the point. Next.js 14 on the front, FastAPI behind it, and Supabase for Postgres, auth, and storage. Messaging goes through Gupshup for WhatsApp and Gmail SMTP for email, with Google Forms in the intake path. It’s deployed as three Docker services on Railway, with the marketing site behind Caddy.

Why it matters to me as an engineer

On a platform team you own a slice. Here I owned all of it — auth, database, storage, third-party integrations, containerized deployment, DNS, and a real lifecycle with real users on the other end. There’s no one to hand the hard part to.

That’s exactly why I keep it here: it’s proof I can take something from nothing to running-in-production without a platform underneath me. The cause is meaningful, but the engineering is the reason it’s on this page — a small, honest example of end-to-end ownership.

What I’d change

Solo full-stack means every decision is a trade against your own time, so I optimized hard for boring and reliable over interesting: managed Postgres and auth instead of rolling my own, a handful of Docker services instead of a clever architecture. That restraint is why it still runs without me babysitting it.

If it grows, the next step is real observability. Right now I find out something’s wrong the way a solo operator does — by hearing about it.