All posts
Web Development
4 min read8/24/2026

The End of SPAs: Why MPAs (and Islands) Are Your Next Web Dev Frontier

Single-Page Applications are a performance trap. Modern Multi-Page Applications, powered by architectural patterns like Islands, offer superior user experience, SEO, and developer ergonomics. It's time to rethink the SPA-first dogma.

Share X LinkedIn

Tip: use ← / → to browse posts.

The End of SPAs: Why MPAs (and Islands) Are Your Next Web Dev Frontier
# The End of SPAs: Why MPAs (and Islands) Are Your Next Web Dev Frontier For years, Single-Page Applications (SPAs) were the holy grail of web development. "Rich user experience," "desktop-like," "blazing fast transitions" – these were the mantras. But let's be brutally honest: for the vast majority of websites, SPAs are an anti-pattern. They’re a performance trap, an SEO nightmare, and often a developer ergonomics disaster. It's time to admit we were wrong and embrace the future: a modern resurgence of Multi-Page Applications (MPAs), supercharged by architectural patterns like Islands. ## The SPA Deception: Unpacking the Myth SPAs promised seamless experiences, but often delivered bloated JavaScript bundles, crippling initial load times, and complex state management. The perceived speed came from *subsequent* navigation, often masking a sluggish first render. For content-heavy sites, e-commerce, or even most B2B applications, the SEO challenges alone were a deal-breaker, despite pre-rendering attempts that added layers of complexity. Consider the user on a mid-range mobile device, on a patchy 3G connection. Does a 2MB JavaScript bundle for a simple product page make sense? No. Does hydration overhead for static content improve their experience? Absolutely not. We built sophisticated frameworks to solve problems that we, arguably, created ourselves by adopting the SPA-first mindset universally. ### Why SPAs Failed Us (Mostly) * **Initial Load Bottleneck:** Large JavaScript bundles and data fetches block rendering, leading to blank screens or spinners. * **Hydration Overhead:** Re-rendering and re-attaching event listeners to already-rendered HTML is a performance tax for interactivity that isn't always needed. * **SEO Challenges:** While server-side rendering (SSR) or static site generation (SSG) mitigate this, they add significant complexity and build times. * **Developer Experience (DX):** State management, client-side routing, and data fetching within a single app often lead to complex, hard-to-maintain codebases. * **Accessibility:** Ensuring proper focus management and semantic navigation in SPAs is a constant battle. ## The MPA Renaissance: Simplicity, Performance, and Predictability MPAs never truly went away, but they were often relegated to simple blogs or marketing sites. Modern MPAs, however, are a different beast. They leverage the best of server-side rendering with judicious client-side enhancements, offering a superior balance of performance, SEO, and development simplicity. Each page load is a fresh slate. The server delivers fully formed HTML, immediately renderable and crawlable. JavaScript is loaded only when and where it's needed, drastically reducing initial payload and Time to Interactive (TTI). ### Key Benefits of Modern MPAs 1. **Superior Initial Load Performance:** Server-rendered HTML is instantly viewable. No huge JavaScript bundle to download, parse, and execute before content appears. 2. **Native Browser Features:** Leverage the browser's built-in navigation, history, and caching. Back/forward buttons work as expected, and deep linking is trivial. 3. **SEO Gold:** Search engine crawlers love fully-formed HTML. No complex server-side rendering setups needed for basic crawlability. 4. **Simpler State Management:** Each page is largely independent, reducing the global state management headaches common in large SPAs. 5. **Robustness:** If JavaScript fails or is disabled, the core content and navigation still work. ## Enter Islands Architecture: The Best of Both Worlds While MPAs offer a strong foundation, purely server-rendered pages can lack the rich interactivity users expect in specific areas. This is where "Islands Architecture" shines. Popularized by frameworks like Astro and Fresh, Islands allow you to ship tiny, independent JavaScript components (your "islands") to specific parts of an otherwise static or server-rendered HTML page. Think of a page as a static landscape (the HTML) with pockets of interactivity (the JavaScript islands). A navigation bar might be an island, a comment section another, a complex data visualization yet another. Crucially, these islands are *isolated*. Their JavaScript and state don't interfere with each other, and the vast majority of the page remains JavaScript-free. ```javascript // An example of an "island" component in a framework like Astro // This JavaScript only loads and runs when the component is on screen import { useEffect, useState } from 'react'; export function Counter() { const [count, setCount] = useState(0); useEffect(() => { console.log('Counter island hydrated!'); }, []); return ( <button onClick={() => setCount(count + 1)}> Count: {count} </button> ); } ``` ### Advantages of Islands Architecture * **Fine-grained Interactivity:** Deliver dynamic features only where necessary, without hydrating the entire page. * **Minimal JavaScript:** Drastically reduces the amount of JavaScript shipped to the client. * **Improved Performance:** Faster Time to Interactive (TTI) and First Input Delay (FID) as less JS needs to load and execute. * **Enhanced Resilience:** If one island fails, the rest of the page (and other islands) remain unaffected. * **Flexible Framework Choice:** You can often use different frontend frameworks (React, Vue, Svelte) for different islands on the same page. ## The Future Is Pragmatic The pendulum is swinging back towards pragmatism. We're moving away from monolithic client-side applications towards a more distributed, server-first approach with targeted client-side enhancements. This isn't a regression; it's an evolution. For most businesses, particularly those focused on content, e-commerce, or marketing, adopting modern MPA patterns with Islands architecture will lead to demonstrably better user experiences, stronger SEO, and more maintainable codebases. Stop chasing the SPA dream; embrace the performance and simplicity of the new old way. Your users (and your developers) will thank you.
webdev
mpa
islands architecture
performance
frontend
Share X LinkedIn

What clients say

Real reviews from founders and teams we've shipped with.

5.0 · 6 reviews
"Our short-link platform launched flawlessly. Incredible performance and clean UX out of the box."
Neha S.
Product Lead, iShortURL
"Delivered a scalable app directory that keeps growing. Best engineering partner we've had."
Priya V.
Founder, AppsWant
"GitHub Actions, preview environments, semantic releases — the DX Hashim set up is chef's kiss."
Julian F.
Platform Engineer, Codewave
"Midjourney pipelines automated our brand asset production. Consistent style, batch rendering, versioned prompts."
Midjourney Pipeline
AI Image Generation
"Our Next → TanStack migration cut TTFB in half. Hashim's diagnosis was surgical."
Lena K.
Staff Engineer, Northloop
"Framer Motion animations that actually respect prefers-reduced-motion. Details matter, and Hashim gets it."
Owen S.
Design Lead, Studio Kai