Back to News & Insights
Web Development August 11, 2026 ยท 3 min read

Vada Pav - An Interactive Landing Page for Mumbai's Favorite Street Food

``Frontend Challenge Perfect Landing Submission ๐Ÿฒ๐Ÿฅง This is a submission for Frontend Challenge -...

Vada Pav - An Interactive Landing Page for Mumbai's Favorite Street Food

This is a submission for Frontend Challenge - Comfort Food Edition, Perfect Landing.

An interactive landing page for vada pav โ€” not a restaurant, not a recipe blog, a love letter to one dish that means something specific to me.

Vada pav is comfort food that people from Maharashtra will defend with real conviction โ€” everyone has an opinion about the right ratio of garlic chutney to green, whether onion belongs on it, and which cart does it best. I wanted the page to feel like the dish itself: warm, a little chaotic, and specific rather than generic.

The site has a hero section with an animated illustration (continuous steam, twinkling string lights evoking a stall at dusk, a slow monsoon-rain layer in the background), a personal story section, a four-moment "Day With It" timeline walking through the same dish at different times of day, and an interactive centerpiece: the Vada Pav Builder.

The builder lets you toggle five real toppings โ€” green chutney, dry garlic chutney, a fried chili, raw onion, and sev โ€” and watch them stack in the correct order on an SVG sandwich, regardless of what order you click them in. As you build, a live-generated sentence describes your exact combination in plain English, and an animated heat meter tracks how spicy your choices are.

CodePen: https://codepen.io/editor/lvjstkex-the-vuer/pen/019ff081-af80-78e8-8213-5a8a3f37f6cb

I wanted to avoid the landing-page defaults I kept seeing myself reach for โ€” a cream background with a single warm accent, or a generic hero with a stock gradient. Since vada pav already has a strong, specific visual identity, I built the palette directly from the dish instead: a deep frying-oil brown-black (the kadhai it's cooked in), turmeric gold, chili red, and curry-leaf green, with a warm cream reserved for the reading sections.

The Vada Pav Builder is the part I'm most proud of. Under the hood it's plain vanilla JavaScript โ€” a state object mapping each ingredient to a boolean, rendered into a fixed-order stack using CSS order so the sandwich always assembles correctly no matter which order you click ingredients in. Tying it to three things at once โ€” the visual stack, a live-generated natural-language sentence, and an animated heat meter โ€” is what took it from "a toggle list" to something that actually feels like assembling food.

The "Day With It" timeline walks through the dish at four real moments (a station-platform grab, after school, a monsoon evening under a stall's tarpaulin, and the last cart open at night) โ€” a real sequence, not just a stylistic list, which is why it's numbered/ordered rather than presented as flat cards.

On accessibility: every ingredient toggle is a real , not a clickable div; an aria-live region announces each addition and removal for screen reader users; all interactive elements have visible keyboard focus states; and every animation โ€” the steam, the string lights, the stack's spring-in motion, the rain layer โ€” is disabled cleanly via a prefers-reduced-motion` check, both in CSS and in the JavaScript that spawns the sparkle effects.

The whole thing is a single self-contained HTML file โ€” no build step, no framework โ€” which felt like the right scope for a food-themed love letter rather than a full application.

Want to discuss this further?

Book a free strategy call with our team to see how these insights apply to your specific business goals.

Book a consultation