Pliki cookies

Pliki cookies niezbędne zapewniają działanie strony. Analityczne i reklamowe (statystyki odwiedzin, pomiar skuteczności reklam) włączamy tylko za Państwa zgodą, którą można w każdej chwili zmienić lub wycofać w „Ustawieniach cookies” w stopce strony. Więcej: polityka cookies, polityka prywatności.

Kiedy polecamy React i Node.js, a kiedy wystarczy Livewire

Najczęściej łączymy interfejs w React z backendem w Laravelu. Node.js po stronie serwera wybieramy w konkretnych sytuacjach, opisanych niżej.

Polecamy React, gdy:

  • interfejs działa jak aplikacja: przeciąganie elementów, edycja w tabelach, filtrowanie bez przeładowań strony,
  • panel korzysta z tego samego API co aplikacja mobilna i ma pokazywać te same dane na żywo,
  • produkt będzie latami rozwijany przez osobny zespół frontendowy,
  • publiczna część produktu ma się szybko ładować i być dobrze widoczna w Google.

Polecamy Node.js po stronie serwera, gdy:

  • system opiera się na zdarzeniach w czasie rzeczywistym: czat, powiadomienia na żywo, śledzenie pojazdów,
  • Twój zespół pracuje w TypeScripcie i przejmie utrzymanie po wdrożeniu,
  • budujemy integracje i automatyzacje reagujące na zmiany w innych systemach.

Odradzamy, gdy:

  • panel ma głównie listy, formularze i raporty - Livewire da ten sam efekt taniej, w jednym projekcie zamiast dwóch,
  • budżet jest mały, a osobny frontend i backend podniosą koszt,
  • nie masz planu na aktualizacje zależności JavaScript, które starzeją się szybciej niż w PHP.

React, Vue czy Livewire - porównanie dla interfejsu webowego

Trzy sposoby na interfejs aplikacji webowej. W nowych projektach decyzja zapada zwykle między React a Livewire.

React, Vue czy Livewire - porównanie dla interfejsu webowego
Kryterium React Vue Laravel Livewire
Gdzie działa logika interfejsu w przeglądarce (TypeScript) w przeglądarce (TypeScript) na serwerze (PHP), przeglądarka dostaje gotowy HTML
Osobny projekt frontendu tak tak nie - ten sam kod co backend
Najlepszy do rozbudowanych aplikacji z dużą liczbą interakcji średnich aplikacji i rozwoju istniejących projektów paneli administracyjnych i systemów wewnętrznych
Koszt budowy panelu najwyższy z trzech średni najniższy z trzech
Nasze realizacje panele: Gmina Jarocin, Clean App, APH panel VG Lock Ratuj Jedzenie, aplikacja dla kierowców

Zakres, etapy i ceny aplikacji webowych opisujemy na stronie aplikacje webowe na zamówienie. Jak zaplanować budżet takiego projektu, wyjaśniamy w artykule budżetowanie projektu dedykowanego systemu IT.

Jak pracujemy w React i Node.js

Wersje

Piszemy w TypeScripcie, a nie w czystym JavaScripcie - błędy typów wychodzą przy kompilacji, a nie u użytkownika. Node.js uruchamiamy wyłącznie w wersjach LTS, a zależności aktualizujemy planowo, z automatycznym powiadomieniem o zgłoszonych lukach bezpieczeństwa.

Architektura

Interfejs budujemy z komponentów jednego systemu projektowego, dane z API pobieramy przez warstwę z pamięcią podręczną, a stan globalny ograniczamy do minimum. Gdy liczy się widoczność w Google, stosujemy Next.js z renderowaniem po stronie serwera. Backend w Node.js piszemy w NestJS albo Express, z walidacją danych w każdym punkcie API.

CI/CD i wdrożenia

Każda zmiana uruchamia lint, testy i budowę wersji produkcyjnej. Nowe funkcje sprawdzasz na środowisku testowym, zanim trafią na produkcję, a wdrożenia są automatyczne.

Testy

Komponenty testujemy jednostkowo, a najważniejsze ścieżki - logowanie, zamówienie, płatność - testami end-to-end w przeglądarce. Przed odbiorem sprawdzamy dostępność: obsługę klawiaturą, kontrast i współpracę z czytnikami ekranu.

Realizacje z interfejsem webowym w React

Projekty, w których część webowa powstała w React, a backend w Laravelu.

Smartfon z aplikacją Jarocin.pl w dłoniach na tle ulicy miasta

Samorządy i gminy Android / iOS / Web

Aplikacja mobilna dla Gminy Jarocin

Osoba z wiadrem środków czystości pokazuje smartfon z aplikacją Clean App

Usługi i firmy sprzątające Android / iOS / Web

Aplikacja marketplace dla usług sprzątania Clean App

Kosmetyki naturalne na blacie i ekran aplikacji APH Serwis z bestsellerami

Beauty i kosmetyka, E-commerce i marketplace Android / iOS / Web

Aplikacja mobilna dla marketplace B2B branży kosmetycznej

Gmina Jarocin: serwis jarocin.pl zbudowany z mikroserwisów i powiązana z nim aplikacja mobilna, z płatnościami Przelewy24 dzielonymi między partnerów. Clean App: marketplace łączący klientów z firmami sprzątającymi, z rezerwacją, płatnościami i lokalizacją GPS. APH: platforma B2B dla branży kosmetycznej ze skanerem kodów kreskowych i 2D.

Dlaczego możesz nam zlecić aplikację webową

Od 2010 roku na rynku, ponad 300 zrealizowanych projektów

Panele w React dla gminy, marketplace’ów i platform B2B

Backend w Laravelu albo Node.js - dobrany do projektu i zespołu, który go utrzyma

Kod i prawa autorskie przechodzą na Ciebie po zapłacie ostatniej faktury

Najczęściej zadawane pytania o React i Node.js

Aplikacja webowa zaczyna się od 30 000 zł netto. System z integracjami ERP lub CRM kosztuje zwykle od 70 000 zł, a rozbudowana platforma B2B albo SaaS z wieloma rolami i płatnościami zaczyna się od 120 000 zł. React z osobnym backendem kosztuje więcej niż panel w Livewire o tym samym zakresie, bo to dwa projekty zamiast jednego. W wycenie pokazujemy oba warianty, jeśli oba mają sens.

Tak, jeśli zbudujemy ją z renderowaniem po stronie serwera, na przykład w Next.js. Aplikacja React renderowana wyłącznie w przeglądarce wolniej się ładuje i trudniej ją zaindeksować. Dlatego rozdzielamy: publiczne strony produktu renderujemy na serwerze, a panel po zalogowaniu działa jak aplikacja. Panelu i tak nie trzeba pokazywać w wynikach wyszukiwania.

Tak, szczególnie gdy system działa na zdarzeniach: czat, powiadomienia na żywo, śledzenie pojazdów, integracje reagujące na zmiany w innych systemach. Do klasycznego systemu z panelem, rolami i raportami częściej proponujemy Laravel, bo gotowe elementy skracają budowę. Node.js wybieramy też wtedy, gdy Twój zespół pracuje w TypeScripcie i to on przejmie utrzymanie.

Nie, choć mają wspólny język i sposób budowy interfejsu. React służy do aplikacji w przeglądarce, React Native do aplikacji mobilnych na Androida i iOS. W React Native zbudowaliśmy między innymi aplikację dla CLAR System. Nowe aplikacje mobilne częściej tworzymy we Flutterze, a React Native proponujemy, gdy Twój zespół zna React i ma utrzymywać aplikację.

Jeśli zostajesz z nami na utrzymaniu - my: aktualizujemy biblioteki planowo, reagujemy na zgłoszone luki bezpieczeństwa i pilnujemy wersji Node.js ze wsparciem. Jeśli przejmujesz kod, dostajesz dokumentację, listę zależności i instrukcję aktualizacji. Aplikacja bez aktualizacji przez dwa lata zwykle wymaga sporej pracy przy pierwszej zmianie, więc planujemy je z góry.

Pierwsza działająca wersja z najważniejszymi ekranami powstaje zwykle w 3–5 tygodni. Pełna aplikacja z panelem, rolami i integracjami to 1,5–2,5 miesiąca, a platforma dla całej firmy 2,5–4,5 miesiąca. Co dwa tygodnie dostajesz działającą wersję na środowisku testowym, więc postęp widzisz w przeglądarce, a nie w raportach.

Zaktualizowano:

Napisz Zadzwoń