Przejdź do treści

95 artykułów o tematyce Next.jsStrona 6

Hreflang i link kanoniczny w Next.js dla stron i18n

Hreflang i link kanoniczny rozwiązują dwa różne problemy wielojęzycznego SEO: właściwy język wyniku i właściwy adres do indeksowania. W Next.js App Router oba mechanizmy da się generować spójnie przez Metadata API , bez ręcznego utrzymywania tagów w każdej podstronie.

Maciej Sala

Maciej Sala

Founder StriveLab

Jak osiągnąć 100/100 w Lighthouse Performance w Next.js? Case study

Mamy tu typową stronę usługową zbudowaną w Next.js, wyposażoną w Google Analytics, Google Tag Manager , prosty formularz kontaktowy, galerię zdjęć i animacje. Na początku testy PageSpeed Insights pokazały wyniki: 67/100 na urządzeniach mobilnych i 89/100 na komputerach stacjonarnych.

Maciej Sala

Maciej Sala

Founder StriveLab

Next.js Sitemap i robots.txt — automatyczna generacja z App Routera

Next.js App Router oferuje natywne API bez zewnętrznych bibliotek do generowania obu plików. W tym artykule pokazuję, jak zrobić to konwencjami app/sitemap.ts i app/robots.ts , kiedy wystarczy natywne rozwiązanie, a kiedy warto sięgnąć po next-sitemap .

Maciej Sala

Maciej Sala

Founder StriveLab

Schema.org w Next.js: LocalBusiness, Service i FAQ

Dane strukturalne to bezpośredni opis Twojej firmy w języku, który rozumie Google i modele AI. Dzięki nim mamy pełną kontrolę nad danymi i nie pozostawiamy robotom wyboru i zgadywania na podstawie samego tekstu strony. Schema.org mówi wprost, kim jesteś, co oferujesz, gdzie działasz i na jakie pytania odpowiadasz. W Next.js nie potrzebujesz do tego wtyczki, ponieważ wystarczą komponenty React, które renderują poprawny JSON-LD i dają się testować.

Maciej Sala

Maciej Sala

Founder StriveLab

Jak automatycznie generować grafiki Open Graph w Next.js?

Gdy udostępniasz link do artykułu na LinkedIn, zamiast generycznego szarego pola lub logo strony, obok może pojawić się estetyczna grafika z tytułem, autorem i brandingiem. Ta różnica znacząco wpływa na klikalność, a ręczne przygotowywanie takich obrazów jest przesadnie czasochłoenne. Funkcja ImageResponse z biblioteki next/og rozwiązuje ten problem, generując dynamiczne obrazy programowo na podstawie danych z Twojej strony.

Maciej Sala

Maciej Sala

Founder StriveLab

CSRF, XSS, Injection: 5 luk bezpieczeństwa w Next.js

Przekonanie, że wbudowane w Reacta zabezpieczenia przed XSS w pełni chronią aplikację, to niebezpieczny mit. Współczesny Next.js to nie tylko warstwa prezentacyjna, ale pełnoprawne środowisko serwerowe z Server Actions, Route Handlerami, Server Components i bezpośrednim dostępem do nagłówków czy ciasteczek. Każdy z tych punktów styku staje się potencjalnym wektorem ataku, jeśli traktuje się go z taką samą beztroską jak zwykły komponent UI. Oto pięć najczęstszych luk bezpieczeństwa w architekturze Next.js oraz konkretne sposoby na ich wyeliminowanie.

Maciej Sala

Maciej Sala

Founder StriveLab

Rate limiting na Edge w Next.js z Upstash

Jeden bot, jedna pętla z błędem albo jeden zdeterminowany atakujący — i Twoje API dostaje tysiące żądań na minutę. Serwer się dławi, rachunek za infrastrukturę rośnie, a normalni użytkownicy widzą błędy. Rate limiting ogranicza liczbę żądań z jednego źródła w oknie czasu. Pokazuję, jak wdrożyć go w Next.js z Upstash Redis — w Proxy, Route Handlerach i Server Actions, z trzema algorytmami i limitami per endpoint. W Next.js 16 proxy.ts działa jednak w Node.js, więc „na Edge” dotyczy Route Handlera z Edge Runtime albo infrastruktury dostawcy, nie samej konwencji Proxy.

Maciej Sala

Maciej Sala

Founder StriveLab

RBAC w Next.js: jak bezpiecznie wdrożyć role i uprawnienia?

Wyobraź sobie, że dla każdego użytkownika z osobna sprawdzasz, czy wolno mu edytować artykuł. Przy dziesięciu osobach jeszcze ujdzie, przy tysiącu to droga przez mękę. RBAC odwraca pytanie: uprawnienia wiążesz z rolami admin, editor, user , role z ludźmi, a w kodzie pytasz tylko, czy rola ma uprawnienie posts:edit . Jedna reguła zamiast tysiąca wyjątków.

Maciej Sala

Maciej Sala

Founder StriveLab

Wydajne animacje Framer Motion w Next.js

Animacje bez wątpienia poprawiają doświadczenia użytkownika, ponieważ dostarczają natychmiastowego feedbacku, kierują wzrok i sprawiają, że interfejs wydaje się bardziej responsywny. Z drugiej strony, nieprawidłowo zaimplementowane animacje potrafią mocno zaszkodzić wskaźnikom Core Web Vitals. Nadmiarowy kod JavaScript obciąża LCP, animowanie właściwości layoutowych takich jak top , left , width czy height wywołuje kosztowne operacje układu powodujące przesunięcia, a skomplikowane kalkulacje wykonywane w każdej klatce drastycznie obniżają płynność i pogarszają INP.

Maciej Sala

Maciej Sala

Founder StriveLab