India at 80
A scroll-driven digital exhibition on 80 years of Indian independence — history, protest and the questions still open.

The problem
I wanted to see whether a serious subject — “what does freedom actually look like at 80?” — could hold up as an interactive exhibition instead of an essay, without cheapening it with stock imagery or AI-generated “history”.
What I built
One continuous scroll through fourteen chapters: a 1947–2026 timeline, a wall of documented civic movements with real sources, a culture section, and speculative “next 80 years” prompts. Every visual is generative or typographic — particle formations, SVG pattern work drawn from block prints and jali lattice — zero photographs by design, with an asset manifest ready to take real licensed images.
What I learned
How to build a long-form narrative where each chapter has its own GSAP timeline and reduced-motion fallback but the whole still reads as one hand — and where to draw the line on a subject that could easily overreach.
Overview
An independent digital exhibition marking 80 years of Indian independence. It treats freedom as inherited, questioned and reimagined by each generation rather than settled — history as narrative, not verdict.
Features
Fourteen-chapter scroll
Hero → timeline → archive wall → people → culture → civic map → open questions → the next 80 → credits, as one continuous piece.
Civic movements
Documented, closed historical movements — each with dates, location, demands, government response and real sources.
Generative visuals only
Particle formations (the “80”, the map of India, a flag reveal) and SVG pattern work from Indian textile and architectural motifs.
Asset manifest
A registry (lib/assets.ts) so real licensed photography drops in later and the placeholders retire automatically.
How it's put together
- 01Single route; one component per chapter, each owning its GSAP timeline, reduced-motion fallback and cleanup.
- 02All historical data in lib/data.ts, every record carrying a source field.
- 03Shared canvas point-sampling (lib/particles.ts) powers every particle-formation visual.
Challenges
Scoping honestly
The full idea wanted WebGL scenes, per-state culture breakdowns and a live protest map. The shipped version is 2D canvas + GSAP and only documented, closed movements — what one build could do responsibly.
No photography
Building visual richness from particles, gradients and typography instead of images.
Where it landed
A deployed single-page exhibition that carries a heavy subject on composition and motion alone.
Screens

Want something like this?
Get in touch →