Przejdź do treści

95 artykułów o tematyce Next.jsStrona 7

Integracja Supabase z Next.js App Router

Supabase to otwartoźródłowa platforma backendowa zbudowana wokół PostgreSQL . W jednym projekcie dostajesz bazę danych, Auth, Storage, Realtime, Edge Functions i automatycznie generowane API. Dla aplikacji w Next.js to często najkrótsza droga do sensownego MVP bez osobnego backendu pisanego od zera.

Maciej Sala

Maciej Sala

Founder StriveLab

Drizzle ORM oraz Prisma w projektach w Next.js

Prisma i Drizzle zdominowały świat Next.js i ogólnie Node.js, wyrastając na dwa najpotężniejsze ORM-y dostępne na rynku. Choć służą podobnemu celowi, reprezentują dwie fundamentalnie różne wizje komunikacji z bazą danych.

Maciej Sala

Maciej Sala

Founder StriveLab

Repository i Service Layer w Next.js dla Server Actions

W Next.js traktuj Server Actions i Route Handlers jako cienkie adaptery wejścia: pobierają sesję, walidują payload i mapują odpowiedź. Reguły biznesowe trzymaj w Service Layer, zapytania do bazy w Repository, a transakcje spinaj przez Unit of Work. Taki podział nie jest potrzebny w każdym CRUD-zie, ale zaczyna się zwracać, gdy jedna operacja dotyka kilku tabel, kilku wejść albo kilku reguł.

Maciej Sala

Maciej Sala

Founder StriveLab

Design System w Next.js od zera: Tailwind, CVA i Radix UI

Ile razy wklejałeś className="bg-blue-600 text-white px-4 py-2 rounded-lg hover:bg-blue-700 do każdego przycisku w projekcie? Gdy zachodziła potrzeba zmiany odcienia niebieskiego, okazywało się, że musisz aktualizować ten sam łańcuch klas w czterdziestu miejscach. System projektowy kończy z tym problemem, bo definiujesz komponent raz, ustalasz jego warianty oraz tokeny, a następnie używasz go w całej aplikacji.

Maciej Sala

Maciej Sala

Founder StriveLab

Jak organizować kod w dużych projektach Next.js?

W małym projekcie domyślna organizacja katalogów App Routera działa świetnie — app/ , components/ , lib/ . Ale gdy aplikacja rośnie do 50+ komponentów, 20+ stron i kilku domen biznesowych, zaczynasz tracić orientację.

Maciej Sala

Maciej Sala

Founder StriveLab

Jak działa Partial Prerendering (PPR) w Next.js?

Przez lata rendering w Next.js stawiał nas przed skrajnym wyborem: cała strona była albo w pełni statyczna, albo w pełni dynamiczna. Partial Prerendering PPR przełamuje ten podział, sprawiając, że wstępnie wyrenderowana powłoka pojawia się natychmiast, podczas gdy dynamiczne fragmenty są strumieniowane w tle. W Next.js 16 mechanizm ten ewoluował w stronę Cache Components. Zobacz, w jakich sytuacjach rozwiązanie realnie przyspiesza aplikację, a kiedy staje się głównie niepotrzebną komplikacją.

Maciej Sala

Maciej Sala

Founder StriveLab

Route Handlers czy Server Actions? Kiedy co wybrać

App Router daje Ci dwa sposoby na uruchomienie kodu po stronie serwera, poprzez Route Handlers i Server Actions . Może wyglądają podobnie, ponieważ oba działają na serwerze, sięgają do bazy i do zmiennych środowiskowych, ale każdy z nich rozwiązuje zupełnie inny problem. Użycie jednego tam, gdzie pasuje drugi, nie jest odpowiednim rozwiązaniem, ponieważ zły wybór odbija się potem na architekturze.

Maciej Sala

Maciej Sala

Founder StriveLab

Wielojęzyczna strona w Next.js App Router (i18n)

W Pages Router Next.js miał wbudowane wsparcie dla i18n i wystarczyło dodać konfigurację i18n w next.config.js , by framework zarządzał routingiem językowym automatycznie. App Router nie ma tego mechanizmu i właśnie dlatego i18n trzeba zaimplementować samodzielnie lub użyć do tego celu biblioteki. Artykuł jest o zbudowaniu wielojęzycznej strony w Next.js.

Maciej Sala

Maciej Sala

Founder StriveLab

Optymalizacja obrazów w Next.js oraz next image i CDN

Obrazy są najcięższym bagażem większości stron internetowych. W skrajnych przypadkach, jedno niezoptymalizowane zdjęcie potrafi dorzucić kilka sekund do LCP, a brak zarezerwowanego miejsca rozjeżdża layout. Next.js daje gotowe narzędzie, next/image , ale to nie zawsze będzie to najlepszy wybór, dlatego porównuję trzy podejścia: komponent next/image , natywny srcset i dedykowane CDN do obrazów.

Maciej Sala

Maciej Sala

Founder StriveLab