Building dehraduntourism - 15 Sections, One City
A tourism site for Dehradun with 15 comprehensive sections — places, food, defence institutions, weather, transport. Next.js static export, Framer Motion, Leaflet map, free OpenMeteo weather.
Dehradun — Queen of the Doon. A tourism website covering everything you need: places, food, education, defence institutions, culture, history, transport, weather. 15 comprehensive sections.
I built dehraduntourism.vercel.app. Same playbook as sitamarhi — a city guide that needed to be a page, not an app.
What it does
15 sections covering every aspect of the city. Dark/light mode. Smooth Framer Motion animations. An interactive Leaflet map. A live weather widget. A masonry photo gallery with lightbox. Mobile-first, accessible — keyboard nav, ARIA, proper contrast.
Stack
Next.js 15, App Router, static export. Tailwind CSS 4 with OKLCH colors. Framer Motion for animation. Leaflet + react-leaflet for maps. OpenMeteo for weather — free, no API key. Images from Wikimedia Commons, CC-BY-SA.
No database, no backend. Reference sites don't need them.
Why it matters
Like sitamarhi, this is the kind of content you piece together — you visit, you read, you talk to people. The research is the work. The layout is the easy part.
What's next
Photo lightbox performance on mobile. More local-first features. The weather widget should show a fallback when offline, same lesson as sitamarhi.
Dehradun, Queen of the Doon. One static page, zero dependencies.
More Essays
Building jev-curate: Fast Synthetic Dataset Sifter in Rust
Filtering synthetic training data with TypeSafe AI Jev: streaming JSONL and Parquet rows through calibrated System One gates at 70ms latency with zero memory accumulation. � 5 min
systemsBuilding jev-git: Sub-Second Git Reflex Gate in Rust
Screening staged git diffs for leaked secrets, destructive payloads, and AI hallucinations in 80ms using TypeSafe AI Jev System One. � 4 min
systemsBuilding jev-scout: Zero-Hallucination Crate and Repo Scout
Preventing AI package hallucinations: discovering real crates and GitHub repositories using live registry APIs and TypeSafe Jev speculative fan-out scoring. � 4 min