Full-stack developer. I build things that have to be correct, not just working — payment flows that can't double-charge, state machines that can't be talked into an illegal transition, and scanners that don't cry wolf.
Currently deep in two projects: a funding platform where every rupee has to be traceable, and an F1 telemetry dashboard built on real race data.
🌉 ImpactBridge · React TypeScript Express Prisma PostgreSQL
A grant and nonprofit funding platform. The interesting part isn't the CRUD — it's the parts that refuse to lie:
- An 11-state grant workflow enforced as a transition table, not
ifstatements. The UI can't invent a move the server won't allow, because the buttons aren't the enforcement point. - Donations that confirm three independent ways — browser callback, gateway webhook, and a reconciliation sweep — because a redirect back to your site is not proof that money moved.
- No invented numbers. Platform-wide "people reached" isn't shown, because the underlying field is a free-form string that can't be summed. On a product about traceable money, a figure nobody can derive is worse than no figure.
- Editorial front end: scroll-driven type, one continuous line drawn down the page, all of it degrading to readable HTML when JavaScript doesn't run.
Formula 1 intelligence platform — live timing, telemetry, strategy simulation and season analysis on real FastF1/OpenF1 data. Scroll-scrubbed scenes driven by a single CSS custom property instead of an animation library.
🔍 Vulnprobe · Python Flask
Modular black-box web vulnerability scanner with a Flask UI, PDF reporting, and findings mapped to GDPR/SOC 2 controls. Built to produce a report a non-engineer can act on.
🎧 Moodify · Python Flask Spotipy
Mood-based Spotify recommender. Small, finished, does one thing.
Languages TypeScript · JavaScript · Python · SQL Front end React · Next.js · Tailwind · GSAP Back end Node · Express · Prisma · PostgreSQL · Socket.IO Other Docker · GitHub Actions · Razorpay · Cloudinary
Deployment and observability — getting the things above running somewhere public, with logs and metrics I can actually read when something breaks at 2am.

