Skip to content
Blog
Engineering

Why we chose Next.js 15 for our marketing site

App Router, React Server Components, and a Firebase backend — the decision behind the J7Soft website stack.

By Kamga Simo Junior
Why we chose Next.js 15 for our marketing site

We evaluated Astro, Next.js 15, SvelteKit, and Remix for the J7Soft website. Astro wins on raw performance for static-first sites; Next.js 15 wins on ecosystem maturity and on having a server runtime when we need it. We picked Next.js 15.

Why we didn't pick Astro

Astro is excellent. The reason we didn't pick it is operational: our deployment platform is Firebase, and we have an internal firebase-developer agent who knows Next.js + Firebase deeply. Reducing the surface area of unknowns mattered more than shaving a few KB off the bundle.

React Server Components by default

App Router defaults every component to Server Components — the static parts of marketing pages ship with effectively 0 JS. Interactive islands (the contact form, the command palette, the animated heroes) opt into client rendering. The result is similar to Astro's islands architecture without leaving the React ecosystem.

Firebase as the backend

Firestore for content, Cloud Functions for forms, Firebase Hosting for the app, all under one project. One bill, one console, one CLI. The simplicity is the point.

Tagsnextjsfirebasearchitectureperformance
Related posts

Related posts

Read everything we publish

Browse our latest engineering, product, and company notes.