Next.js to framework oparty na React, stworzony przez firmę Vercel, który rozwiązuje problemy, z którymi czysty React sobie nie radzi: server-side rendering (SSR), static site generation (SSG), routing, optymalizacja obrazków, SEO i wydajność. W skrócie: React to biblioteka do budowy interfejsów, a Next.js to kompletny framework do budowy produkcyjnych stron i aplikacji webowych.
Next.js jest używany przez: Vercel, Netflix, TikTok, Twitch, Hulu, Nike, Notion, Hashicorp i tysiące innych firm. W tym poradniku wyjaśniam co to jest, jak działa, czym różni się od czystego React i kiedy warto go wybrać.
Spis treści
ToggleReact vs Next.js — problem, który Next.js rozwiązuje
React (sam w sobie) to biblioteka do budowy UI — renderuje komponenty w przeglądarce (Client-Side Rendering — CSR). Problem:
- SEO: boty wyszukiwarek (Googlebot) dostają pusty HTML (tylko
<div id="root"></div>) i muszą uruchamiać JavaScript, żeby zobaczyć treść. Google to umie (z opóźnieniem), ale inne wyszukiwarki i social media crawlery — nie zawsze. - Wydajność: przeglądarka musi pobrać cały bundle JavaScript, wykonać go i dopiero wtedy użytkownik widzi stronę. Na wolnych połączeniach = biały ekran przez sekundy.
- Routing: React nie ma wbudowanego routingu — musisz zainstalować React Router i skonfigurować ręcznie.
- Brak backendu: React jest frontendem — do API, bazy danych, autentykacji potrzebujesz osobnego backendu (Express, FastAPI, itp.).
Next.js rozwiązuje to wszystko „out of the box”:
| Problem | React (czysty) | Next.js |
|---|---|---|
| Rendering | CSR (tylko klient) | SSR, SSG, ISR, CSR (wybierasz) |
| SEO | Problematyczne | Doskonałe (HTML gotowy z serwera) |
| Routing | React Router (ręcznie) | File-based routing (automatyczny) |
| Backend / API | Osobny serwer | API Routes (wbudowane) |
| Obrazki | Ręczna optymalizacja | next/image (automatyczna) |
| Fonty | Ręcznie (FOUT/FOIT) | next/font (zero layout shift) |
| Deploy | Konfiguracja webpack/Vite | Vercel / Node.js / Docker |
SSR, SSG, ISR, CSR — 4 strategie renderowania
Największa siła Next.js: możesz wybrać jak każda strona jest renderowana — inną strategię dla strony głównej, inną dla bloga, inną dla dashboardu.
SSR — Server-Side Rendering
Serwer generuje HTML przy każdym żądaniu. Użytkownik otwiera stronę → serwer odpala React → generuje HTML → wysyła gotową stronę. Przeglądarka dostaje kompletny HTML od razu (świetne dla SEO i wydajności).
Kiedy: strony z dynamicznymi danymi, które zmieniają się przy każdym żądaniu (dashboard, koszyk, personalizowany content).
SSG — Static Site Generation
HTML jest generowany w czasie budowania (build time), nie przy każdym żądaniu. Serwer serwuje gotowe pliki HTML — błyskawicznie, z CDN. Idealne dla treści, które nie zmieniają się co sekundę.
Kiedy: blog, dokumentacja, landing page, portfolio — treści aktualizowane raz dziennie/tygodniowo, nie co sekundę.
ISR — Incremental Static Regeneration
Kompromis: strona jest statyczna (SSG), ale odświeża się co X sekund w tle. Przy pierwszym żądaniu: serwer serwuje starą (cached) wersję. W tle generuje nową. Następne żądanie dostaje świeżą wersję.
Kiedy: sklep e-commerce (ceny/stany magazynowe aktualizowane co 60 sekund), blog z komentarzami, strona z danymi API.
CSR — Client-Side Rendering
Jak czysty React — HTML jest renderowany w przeglądarce. Next.js obsługuje CSR dla komponentów, które nie potrzebują SEO (dashboardy, panele admina, interaktywne widgety).
File-based Routing — routing przez strukturę plików
W Next.js (App Router, od v13.4) routing jest automatyczny na podstawie struktury folderów:
app/
page.tsx → / (strona główna)
about/
page.tsx → /about (o nas)
blog/
page.tsx → /blog (lista wpisów)
[slug]/
page.tsx → /blog/moj-wpis (dynamiczny: slug z URL)
api/
hello/
route.ts → /api/hello (API endpoint)
Zero konfiguracji routingu — tworzysz plik, masz stronę. [slug] to parametr dynamiczny — Next.js automatycznie parsuje URL i przekazuje slug jako prop.
API Routes — backend wbudowany w Next.js
Next.js pozwala tworzyć endpointy API bezpośrednio w projekcie — bez osobnego serwera (Express, Fastify). Pliki w app/api/ stają się endpointami REST:
// app/api/hello/route.ts
export async function GET() {
return Response.json({ message: 'Hello from Next.js API!' });
}
export async function POST(request) {
const body = await request.json();
// zapisz do bazy, wyślij email, itp.
return Response.json({ status: 'ok', received: body });
}
GET /api/hello → {"message": "Hello from Next.js API!"}
Zastosowania: formularze kontaktowe, autentykacja, webhook-i, proxy do zewnętrznych API (ukrywanie kluczy API), prosty CRUD.
next/image — automatyczna optymalizacja obrazków
Next.js ma wbudowany komponent Image, który automatycznie:
- Konwertuje do WebP/AVIF — nowoczesne formaty, mniejsze pliki
- Generuje srcset — różne rozmiary per viewport (responsive)
- Lazy loading — ładuje obrazki dopiero gdy są widoczne
- Placeholder blur — rozmyty placeholder podczas ładowania (zero CLS)
- CDN cache — obrazki serwowane z edge cache
import Image from 'next/image';
export default function Page() {
return (
<Image
src="/zdjecie.jpg"
alt="Opis zdjęcia"
width={1200}
height={800}
priority // dla LCP image (bez lazy loading)
/>
);
}
Odpowiednik tego, co w WordPress robi ShortPixel + lazy loading — ale wbudowany w framework.
Next.js vs inne frameworki
| Framework | Bazuje na | Rendering | Najlepszy do |
|---|---|---|---|
| Next.js | React | SSR, SSG, ISR, CSR | Strony, aplikacje, e-commerce, blog |
| Nuxt.js | Vue | SSR, SSG | Jak Next.js, ale dla ekosystemu Vue |
| Remix | React | SSR (focus) | Aplikacje z dużo formularzy, nested routes |
| Astro | Dowolny (React, Vue, Svelte) | SSG (domyślnie) | Statyczne strony, blogi, dokumentacja |
| Gatsby | React | SSG | Blogi, portfolio (mniej popularny w 2026) |
| SvelteKit | Svelte | SSR, SSG | Lekkie, szybkie aplikacje |
Next.js dominuje ekosystem React w 2026 — jest oficjalnie rekomendowany przez zespół React (react.dev). Jeśli budujesz coś w React i nie wiesz, który framework wybrać — Next.js.
Kiedy Next.js, a kiedy WordPress
| Kryterium | WordPress | Next.js |
|---|---|---|
| Kto buduje | Nie-programista (WYSIWYG) | Programista (kod) |
| CMS | Wbudowany | Headless (WordPress API, Sanity, Contentful) |
| Wtyczki | 60 000+ gotowych | npm packages (ale musisz kodować) |
| Wydajność | Zależy od hostingu/cache | Natywnie szybki (SSG + CDN) |
| SEO | Yoast/Rank Math | Natywne meta tagi, SSR |
| Koszt utrzymania | Hosting (~50–200 zł/mc) | Vercel (darmowy do 100GB, potem ~$20+/mc) |
| Najlepszy do | Blog, sklep, strona firmowa (bez kodowania) | Własna aplikacja, startup, SaaS, headless CMS |
WordPress: jeśli chcesz stronę bez programowania, z tysiącami gotowych wtyczek i motywów. Next.js: jeśli budujesz coś custom (SaaS, dashboard, marketplace, aplikacja), masz programistę React i chcesz pełną kontrolę nad wydajnością i designem.
Headless WordPress + Next.js: połączenie obu światów — redaktor pisze w wp-admin (WordPress), frontend w Next.js pobiera dane z REST API WordPress i renderuje stronę. Best of both worlds.
Jak zacząć z Next.js
npx create-next-app@latest moj-projekt
cd moj-projekt
npm run dev
Otwórz http://localhost:3000 — gotowa aplikacja Next.js z hot reload. Edytuj app/page.tsx — zmiany widoczne natychmiast.
Wymagania: Node.js 18+ (zainstaluj z nodejs.org). Edytor: VS Code z rozszerzeniem ES7+ React/Redux/Next.js Snippets.
Najczęściej zadawane pytania
Czy Next.js jest darmowy?
Tak — Next.js jest open source (licencja MIT). Darmowy do użytku komercyjnego. Hosting na Vercel (firma za Next.js): darmowy plan Hobby (osobiste projekty), płatny Pro ($20/mc) i Enterprise. Alternatywnie: hostuj na dowolnym serwerze z Node.js lub Docker.
Czy muszę znać React, żeby używać Next.js?
Tak — Next.js to framework oparty na React. Musisz znać: komponenty, JSX, useState, useEffect, props. Bez Reacta Next.js nie ma sensu. Ale jeśli znasz React — Next.js to naturalny następny krok.
Czy Next.js jest dobry do SEO?
Doskonały — SSR i SSG generują pełny HTML po stronie serwera, co oznacza, że boty Google dostają gotową treść bez uruchamiania JavaScript. Next.js ma też wbudowane: meta tagi, Open Graph, robots.txt, sitemap.xml, canonical URLs. To jeden z najlepszych frameworków do stron, gdzie SEO jest priorytetem.
Next.js vs Vite + React — co wybrać?
Vite + React: lekki bundler do aplikacji CSR (SPA). Brak SSR, SSG, routing ręczny. Dla: paneli admina, dashboardów, aplikacji wewnętrznych (gdzie SEO nie ma znaczenia). Next.js: pełny framework z SSR/SSG, routing, API. Dla: stron publicznych, blogów, e-commerce, SaaS. Jeśli Twoja strona ma być w Google — Next.js.
Podsumowanie
Next.js to framework React, który rozwiązuje problemy czystego React: SEO (SSR/SSG), routing (file-based), backend (API Routes), obrazki (next/image). Dominuje ekosystem React w 2026 i jest oficjalnie rekomendowany przez zespół React. Dla programistów: npx create-next-app i masz gotowy projekt w 30 sekund. Dla właścicieli firm: jeśli Twój programista buduje frontend w React — poproś o Next.js, bo czysty React nie daje SSR i SEO out of the box. A jeśli nie programujesz — WordPress nadal jest królem CMS-ów do budowy stron bez kodu.






