StriverFit
The complete digital platform for a smart home-gym brand — storefront, demo booking, AI blog, and admin portal.
- Discipline
- Full-Stack Platform
- Year
- 2026
- Context
- Client project · Indafit Tech

(01)Overview
StriverFit is an Indian connected-fitness brand building a smart strength trainer with adaptive cable resistance. We built its entire web platform: an immersive marketing site, a configurable storefront with Razorpay checkout, a demo-booking system with expert assignment, a personalised fitness quiz, a Gemini-powered blog writer, and an admin portal that runs it all — on a Next.js Backend-for-Frontend over a FastAPI service, containerised and deployed to AWS through an automated CI/CD pipeline.
(02)What we built
- 1. Configurable storefront — products with variants (SKU, sale and compare-at pricing, stock, backorders) and required, optional or pre-selected add-ons, with cart, Indian shipping checkout, and order history.
- 2. Razorpay checkout built for correctness: the server recomputes every amount from live catalogue prices, verifies payment signatures, and confirms orders through an idempotent webhook with row-level locking.
- 3. AI blog writer on Google Gemini — generate a full brand-voice post from a prompt or enhance a draft, returned as structured JSON (title, excerpt, Markdown body) for the admin to review.
- 4. Four-step demo booking (schedule → details → review → confirmation) for online demos or Experience Center visits, with server-side availability rules for Sundays, public holidays, and admin-disabled slots.
- 5. Demo operations for the team — booking status workflow, expert assignment and notes, an experts directory, and reschedule-in-place with unique booking codes.
- 6. 13-question fitness quiz that computes BMR (Mifflin-St Jeor), TDEE, a safe weekly rate, calorie and macro targets, a 4–52 week weight timeline, and a body-fat estimate — then recommends a program.
- 7. Admin portal for products, orders, add-ons, blogs, demo bookings, and site content — including swapping the homepage hero video and toggling in-app features.
- 8. Three-layer email validation at signup — strict format, disposable-domain blocklist, and a live MX-record lookup — with bcrypt and role-scoped JWTs.
- 9. Immersive marketing experience — intro animation, video hero, scroll-driven feature sections, parallax home, gym, and office environments, and 10 exercise demo videos.
- 10. Production delivery on AWS — Dockerised services behind nginx on EC2, images in ECR, and GitHub Actions with OIDC releasing through SSM with separate dev and prod workflows.
(04)How it works
Request path
- 01BrowserNever talks to the API directly — every call goes to the app's own origin with an httpOnly session cookie.
- 02nginxTerminates TLS, streams videos and images straight from disk with range requests, and proxies the rest.
- 03Next.js BFF~50 route handlers validate the session and forward requests over the private Docker network.
- 04FastAPILayered api → services → repositories → models, with server-side pricing and payment verification.
- 05Neon Postgres17 SQLAlchemy models, Alembic migrations applied automatically when the container starts.
(05)Engineering highlights
Backend-for-Frontend security
The FastAPI service has no public port. JWTs live in httpOnly cookies and every request is brokered by Next.js route handlers, shrinking the attack surface to one origin.
Payments you can trust
Clients never send amounts. Orders are priced on the server, Razorpay signatures are verified, and webhook confirmation is idempotent with the order row locked to prevent races.
Resilient AI generation
The Gemini integration walks a model fallback chain, skipping models that rate-limit or fail and caching the first healthy one, with API keys redacted from logs.
Tested end to end
34 pytest integration tests run against a throwaway Postgres — from model/migration drift checks to the full cart → checkout → Razorpay verification flow with real signatures.
Ship and roll back safely
GitHub Actions authenticates to AWS with OIDC, pushes images to ECR, and releases via SSM — with preflight checks and one-command rollback to any previous image tag.
Media at scale
250 MB of video and imagery is served by nginx with sendfile and range requests, keeping the Node.js process free for rendering and APIs.
(06)Inside the build
Screenshots from the running system — select any image to enlarge.
More work
View all →



Want something like this?
Tell us about your product or platform — we'll get back to you within one business day.