Przejdź do treści
EXACTING Porozmawiajmy
Fix · Live-ready · v0

Interfejs z v0 robi wrażenie. A backend?

Sprawdzamy to, czego klient nie widzi: autoryzację w server actions, klucze i połączenia z bazą. Interfejs zostaje, a backend dostaje podstawy, które wytrzymają prawdziwych użytkowników.

Skan 0 zł · Odpowiedź w 1–2 dni robocze · Sposób przekazania kodu ustalamy razem

PrzykładLive-ready · v0
Wynik skanu 4 rzeczy do naprawy za interfejsem
2 critical2 high5 verified
52
szac. gotowość
Server actions bez autoryzacji CRITICAL
Klucz bazy w NEXT_PUBLIC_ CRITICAL
Brak puli połączeń z bazą HIGH
Dane przykładowe w cenniku HIGH
Logowanie i sesje PASSED
Kiedy

Kiedy warto uporządkować produkt z v0

  1. 01Prototyp stał się produktemTo, co miało być wersją do pokazania, obsługuje dziś prawdziwych klientów.
  2. 02W interfejsie zostały dane przykładoweCzęść ekranów pokazuje dane wpisane w kod, a nie z bazy, i nie wiadomo do końca które.
  3. 03Większy klient pyta o ochronę danychChce wiedzieć, jak działa logowanie, kto do czego ma dostęp i gdzie leżą dane.
  4. 04Przy większym ruchu pojawiają się błędyAplikacja zwalnia albo zgłasza błędy połączenia z bazą.
Ryzyka

Co zwykle znajdujemy w aplikacjach z v0

v0 generuje aplikacje w Next.js i potrafi dodać backend: server actions, trasy API i bazę z integracji Vercel. Ryzyka poniżej dotyczą właśnie tej warstwy.

  1. 01Server actions bez sprawdzenia uprawnieńServer action to funkcja Next.js, którą przycisk w interfejsie wywołuje na serwerze. Dokumentacja Next.js mówi wprost: każda taka funkcja jest publicznym punktem wejścia i musi sama sprawdzać, kto ją wywołuje. Ukrycie przycisku albo przekierowanie ze strony jej nie chroni.Dla biznesu: ktoś zmienia albo usuwa cudze dane.W kodzie: pliki z dyrektywą "use server" i katalog app/api.
  2. 02Zalogowany zamiast uprawnionyFunkcja sprawdza sesję, ale nie sprawdza, czy zamówienie albo dokument należy do tej osoby.Dla biznesu: wystarczy zmienić numer w żądaniu, żeby zobaczyć cudze dane.W kodzie: zapytania do bazy po samym ID przekazanym z przeglądarki.
  3. 03Sekret z prefiksem NEXT_PUBLIC_W Next.js do przeglądarki trafiają tylko zmienne z prefiksem NEXT_PUBLIC_. Gdy dostanie go klucz do bazy, płatności albo AI, odczyta go każdy odwiedzający.Dla biznesu: ktoś używa Twoich usług na Twój rachunek.W kodzie: nazwy zmiennych w ustawieniach projektu i klient bazy importowany w komponentach z "use client".
  4. 04Dane przykładowe obok prawdziwychPraca z v0 zaczyna się zwykle od interfejsu z danymi wpisanymi w kod, a baza dochodzi później. Część takich danych zostaje: liczby na pulpicie, ceny w cenniku, statusy.Dla biznesu: klient widzi nieaktualne albo nieprawdziwe informacje.W kodzie: tablice z danymi w komponentach zamiast zapytań do bazy.
  5. 05Połączenia z bazą, które nie wytrzymują ruchuNa Vercel kod działa w funkcjach serverless, czyli uruchamianych na żądanie, i każde wywołanie może otworzyć nowe połączenie z bazą. Bez puli połączeń (connection pooling) przy większym ruchu baza odmawia kolejnych.Dla biznesu: aplikacja przestaje działać w najgorszym momencie.W kodzie: konfiguracja klienta bazy i adres połączenia.

Sprawdź, które z nich masz u siebie

Skąd to się bierze

Dlaczego tak się dzieje

v0 szybko daje dopracowany interfejs i działający szkielet aplikacji w Next.js. To realna wartość: produkt wygląda profesjonalnie od pierwszego dnia.

Backend powstaje jednak krok po kroku, z kolejnych promptów, a interfejs wygląda na gotowy wcześniej niż to, co za nim stoi. Tak też radzi dokumentacja v0: najpierw układ ekranów, potem baza, logowanie i operacje na danych.

Next.js daje narzędzia do bezpiecznego backendu, ale reguły, kto może co zrobić, wynikają z Twojego biznesu. Tego generator nie zgadnie.

Wynik

Co dostajesz

  1. 01Listę ryzyk z priorytetemOd krytycznych po drobne, każde z plikiem, funkcją albo regułą, w której siedzi problem.
  2. 02Wyjaśnienie po ludzkuCo może się stać, kogo to dotyczy i co oznacza dla Twojego biznesu.
  3. 03Listę tego, co jest w porządkuSprawdzone obszary bez zastrzeżeń. Przydaje się, gdy klient pyta, co jest zabezpieczone.
  4. 04Plan naprawy ze stałą cenąKolejność prac i cenę znaną przed startem. Decyzja, co naprawiamy, należy do Ciebie.
Proces

Jak wygląda assessment

  1. 01 Podstawowy skan · 0 złKrótka rozmowa o produkcie, potem skan kodu i konfiguracji. Sposób przekazania dostępu ustalamy razem. Widzisz, co wymaga naprawy w pierwszej kolejności.
  2. 02 Pełny assessmentKażde ryzyko z miejscem w kodzie i wyjaśnieniem po ludzku. Cenę znasz po skanie, zanim zaczniemy.
  3. 03 Naprawa w stałej cenieNaprawiamy to, co ustalimy, w cenie podanej przed startem prac. Aktywne testy działającej aplikacji tylko po osobnym uzgodnieniu zakresu i autoryzacji.

Podstawowy skan: 0 zł. Pełny assessment i naprawę wyceniamy po skanie, stałą ceną, zanim zaczniemy pracę.

Kto to sprawdza

Dlaczego Exacting

  1. 01Budujemy systemy, które działają latamiNa przykład Kitsune Garage: 184 endpointy API, 79 testów automatycznych, automatyczne wdrożenia i codzienne kopie bazy. Wiemy, jak wygląda aplikacja gotowa na prawdziwy ruch.
  2. 02Sprawdzamy to, o co nikt nie zapytałAsystent AI dobrze sprawdzi to, o co go poprosisz. My szukamy ryzyk, o których nie wiesz, że trzeba o nie pytać.
  3. 03Mówimy wprostJeśli coś nie wymaga naprawy albo przepisanie się nie opłaca, usłyszysz to przed startem prac, razem z ceną.
Decyzja

Naprawa czy przepisanie?

Mówimy wprost, co się bardziej opłaca. Decydujemy po assessmencie, na podstawie kodu.

Naprawa, gdyInterfejs jest dobry, a braki dotyczą backendu: autoryzacji, zmiennych, połączeń z bazą. Uzupełniamy je, interfejs zostaje.
Przepisanie, gdyBackendu właściwie nie ma, a logika siedzi w komponentach. Wtedy budujemy warstwę serwerową od nowa i podpinamy do niej istniejący interfejs.

Częste pytania

Tak. Interfejs zostaje Twój. Ustalamy tylko zasadę: nowe ekrany korzystają z gotowych, zabezpieczonych funkcji serwerowych, zamiast dopisywać własne.

Nie. Według dokumentacji Next.js przekierowanie ze strony nie chroni server actions podpiętych do przycisków na tej stronie. Każda funkcja musi sama sprawdzić użytkownika i jego uprawnienia.

Dają mechanizmy ochrony, np. przed częścią ataków na formularze. Dokumentacja Next.js podkreśla jednak, że nie zastępują one sprawdzeń w Twojej aplikacji: kto jest zalogowany i do czego ma dostęp.

Sprawdzamy wtedy także samą bazę: reguły dostępu, np. RLS w Supabase, czyli zasady, kto widzi który wiersz, i to, czy klucz w przeglądarce nie daje więcej, niż powinien.

Nie zawsze. Do skanu potrzebujemy kodu, a czasem wglądu w ustawienia projektu w Vercel. Co dokładnie i w jakiej formie, ustalamy na pierwszej rozmowie.

Zacznij od darmowego skanu produktu z v0.

Zamów darmowy assessment

Nazwy Lovable, Bolt, Cursor, Replit, v0 i Claude Code należą do ich właścicieli, a Exacting nie jest z nimi powiązany. Aktualizacja: październik 2026.