Association MVP · 1 month
iaol.se
A modern digital home for Sweden's Indian community, built for accessibility, cultural pride, and long-term maintainability.
The problem
The Indian Association of Luleå (IAOL) is a community organisation representing the Indian diaspora in northern Sweden. Their web presence had grown on a legacy Django static site. It worked, but it was increasingly difficult to maintain and visually misaligned with who they are.
They needed a modern, maintainable platform with proper SEO, GDPR compliance for a European audience, and a design that genuinely reflects the community's cultural identity, not just a generic association template.
What was built
- Cultural identity design
- Dark-themed site with a saffron and Indian tricolour accent system. The design reflects the association's identity rather than defaulting to a generic template.
- Dynamic events system
- Events are managed via Supabase with individual detail pages generated at build time. Adding an event doesn't require a developer.
- GDPR-compliant cookie consent
- Cookie consent is implemented honestly, with clear accept and reject options and no manipulative design. Google Analytics 4 only activates after explicit consent.
- Responsive navigation with mobile drawer
- A mobile-first navigation that collapses into a slide-in drawer. It's accessible, animated with Framer Motion, and keyboard navigable.
- SEO infrastructure
- Auto-generated sitemap, robots.txt, and Open Graph metadata throughout. The Next.js Metadata API handles page-level SEO without manual maintenance.
The hardest part
Migrating a legacy Django codebase to a fully server-rendered Next.js App Router architecture is not just a technical lift. It's a structural one. Every assumption about routing, data fetching, and rendering had to be reconsidered.
Doing that while enforcing strict TypeScript, Tailwind v4's CSS-first configuration, and GDPR requirements, all without a CMS and using structured content files and Supabase as the data layer, meant there was no off-the-shelf playbook. Everything had to be reasoned through from first principles.
It shipped in a month.
Tech stack
- Next.js 15 (App Router)
- Full-stack framework
- React 19
- UI layer
- TypeScript
- Type safety throughout
- Tailwind CSS v4
- CSS-first configuration
- Framer Motion
- Animations
- Supabase
- Events database
- Vercel
- Deployment
See it live
The site is live at iaol.se. The events system, mobile navigation, and cultural design are all there to explore.