Quadis Hotels
Live in productionA booking platform for a Delhi NCR hotel group: rooms, rates, real payments, admin back-office. I designed it, built it, deployed it and ran it, alone. It is live today on infrastructure I stood up and later handed to the client.
- The whole stack is mine: a React 18 + TypeScript front end on Vite, a Node/Express + TypeScript booking API, and a PostgreSQL schema covering properties, room types, rate plans, holds and bookings.
- Production ran on my own AWS account first (S3 + CloudFront + Elastic Beanstalk + RDS). I then moved all of it onto the client's account: a hardened EC2 box in ap-south-1 with an Elastic IP, nginx, systemd and Postgres. Scripted build/push deploys, a rehearsed DNS cutover, nothing lost.
- Razorpay checkout with webhook signature verification, PDF invoicing and WhatsApp confirmations. Secrets come from SSM Parameter Store, and every auth path fails closed instead of issuing a forgeable session.
- Hardened the box and the app: TLS and security headers at nginx, rate limiting, Helmet, Zod
validation on every route, and a systemd unit locked down with
ProtectSystem=strict · NoNewPrivileges · MemoryMax. - Quadis Assist is an LLM concierge on Groq with a deterministic fallback, so guests still get an answer when the model is unreachable.