blog-header-image

College Fest Site: Changing the stack

Sep 30, 2025

Remember that blog where I talked about building our fest site with all the developer enthusiasm and zero budget? Yeah, this is the promised follow-up.

We’ve been deep in the trenches setting things up and along the way, we hit that familiar engineering crossroad: Stick to what’s working or switch to something better?

Well, we switched. From Bun + Vite + Hono stack to Next.js.

And it wasn’t an impulsive move it was one of those “sleep-on-it-and-still-feel-right” kind of decisions.


The Problem We Hit

The monolithic setup with Bun and Hono served us well at first. It was minimal, fast, and flexible. But as our app grew, we started noticing:

  • Client-side rendering was limiting SEO and performance sponsors need visibility.
  • Managing separate builds and routing logic across client and server got messy.
  • Asset optimization, caching, and scalability took extra configuration.
  • We wanted smoother developer ergonomics fewer moving parts.

So we looked around, asked for opinions, and the answer was hiding in plain sight: Next.js.


Why Next.js Made Sense

🚀

Next.js gives the perfect balance between flexibility, power, and simplicity a framework that covers both the frontend and backend without duct-taping tools together.

1. Server-Side Rendering for Real Performance

Vite is great for dev speed, but fully client-rendered. That meant our users had to download and run JS before seeing content which isn’t ideal for a college fest homepage that should pop instantly.

Next.js, with Server-Side Rendering (SSR) and Static Site Generation (SSG), provides blazing-fast first paint and SEO out of the box.

2. Unified Frontend and Backend

No need for a separate API server. Next.js lets us write backend logic inside the app through API Routes and Server Actions perfect for event registrations, form handling, or small dynamic data without a separate backend.

3. Built‑In Optimization

Automatic image optimization, font loading, lazy imports, and code splitting all built in. Next.js saves time we’d otherwise spend fine‑tuning builds manually.

4. Better Developer Ergonomics

The Next.js dev experience feels just right: fast refresh, file-based routing, type safety, and smooth hot reloads. It’s a framework built for long hours and tight deadlines.

5. Scalability Without Pain

Next.js deploys perfectly on both Vercel and Cloudflare, which means easy scaling under traffic spikes. The static-first model reduces load on the backend while keeping dynamic behavior flexible.


The New Architecture

Our new setup looks like this:

  • Public pages are pre-rendered at build time for instant load.
  • Server actions power event registration and data fetches.
  • Smart caching uses the framework’s optimizers.
  • Mirrors (multiple deployments) still balance load same idea, cleaner execution.

What’s Next

We’re rebuilding fast same energy, better foundation. The migration brought stability, performance, and fewer late-night “why is this route not working” moments.

Follow me on X for the next update this fest site is about to look and feel next‑level.

Aryan Sharma