Problema
Service-urile auto din UK și România funcționează încă pe hârtie, WhatsApp și foi Excel. Programări pe caiet, stocuri aproximative, facturi cu întârziere, zero vizibilitate asupra performanței. Proprietarul de service petrece mai mult timp administrând afacerea decât reparând mașini.
Garageflow există pentru a rezolva asta: un singur loc pentru tot ce ține de operarea unui service auto, de la programarea clientului până la încasare.
Ce am construit
Am livrat o platformă SaaS completă, construită ca microservicii: un API dedicat (backend) și un dashboard separat (frontend). Plus site-ul de prezentare pentru ambele piețe (garageflow.ro și garageflow.co.uk).
Tab-uri ca în browser
Una dintre cele mai frecvente plângeri ale personalului din service era că ajungeau cu zeci de tab-uri deschise în browser: câte unul pentru fiecare lucrare, client, factură, deviz. Contextul se pierdea constant, iar trecerea între task-uri însemna căutare printr-o mare de tab-uri.
Am rezolvat asta construind tab-uri de tip browser direct în dashboard. Fiecare secțiune se deschide în propriul tab în cadrul aplicației, păstrând starea independent. Poți avea o lucrare deschisă, treci la o factură, verifici stocurile, și te întorci la lucrare exact unde ai rămas. Fără reîncărcare pagină, fără pierderea poziției de scroll, fără re-fetch date.
Arhitectura
Două aplicații independente care comunică prin API REST securizat cu Laravel Sanctum. Backend-ul gestionează toată logica de business, persistența și integrările. Dashboard-ul e un SPA React care consumă API-ul și oferă interfața pentru utilizatori.
Această separare permite scalare independentă: API-ul poate servi simultan dashboard-ul web, o viitoare aplicație mobilă, și integrări third-party, toate prin același endpoint.
Module principale
Jobs & Work Orders: nucleul aplicației. Fiecare lucrare urmărește un workflow clar: draft, pending, in progress, on hold, waiting parts, ready for pickup, completed. Alocare pe tehnicieni și bay-uri (rampe/lifturi). Tracking timp manoperă și piese folosite.
Scheduling & Bays: un calendar vizual care arată cine face ce, unde și când. Tehnicienii și bay-urile (rampe, lifturi, stații ITP) sunt afișate ca coloane. Lucrările sunt blocuri colorate pe care le poți trage și muta pentru reprogramare. Sistemul verifică disponibilitatea în timp real: dacă un tehnician e în concediu sau un bay e în mentenanță, nu te lasă să programezi.
- Programare per mecanic și per stație de lucru
- Suport complet pentru stații ITP cu scheduling dedicat
- Gestionare concedii cu workflow de aprobare
- Program de lucru, pauze de masă, calendar sărbători

Estimates: creare devize detaliate, trimitere pe email, tracking status (sent, viewed, approved, declined). Conversie automată din deviz aprobat în lucrare. PDF generat automat.
Invoicing: facturare din lucrări sau comenzi. Status tracking complet (draft, issued, sent, paid, overdue). Înregistrare plăți multiple (cash, card, transfer, cec). Note de credit. Generare PDF.
Stock Management: inventar piese cu SKU, coduri OEM, barcode. Stocuri minime/maxime cu alerte automate. Mișcări de stoc logate. Sugestii de reaprovizionare.
Purchase Orders: comenzi către furnizori, tracking livrare prin GRN (Goods Receipt Note), PDF pentru comunicare cu furnizorii.
Gestionare ITP: mai mult decât un tabel cu date. Modulul monitorizează datele de expirare pentru fiecare vehicul din sistem și trimite alerte SMS automate înainte de expirare. Proprietarul service-ului configurează cu câte zile înainte să notifice, iar sistemul se ocupă de rest. Fiecare SMS e logat cu status de livrare, destinatar și timestamp. Istoric complet notificări per vehicul, ca să știi mereu cine a fost notificat și când.


Customers & Vehicles: management clienți cu vehicule asociate. Detalii vehicul: marcă, model, an, VIN, număr înmatriculare. Istoric complet lucrări pe vehicul.
Roluri și permisiuni
Nu toată lumea din service are nevoie de acces la tot. Recepționerul nu are de ce să vadă facturile de la furnizori. Tehnicianul nu trebuie să gestioneze nivelurile de reaprovizionare. Proprietarul vrea să vadă totul.
Garageflow vine cu patru roluri predefinite (Administrator, Manager, Recepționer, Tehnician) și o matrice granulară de permisiuni care acoperă fiecare modul: lucrări, devize, facturare, stocuri, programări, clienți, personal, produse, comenzi furnizori și altele. Fiecare rol definește exact ce poate un utilizator să vadă, creeze, editeze sau șteargă în întregul sistem.
Pentru service-uri cu nevoi specifice, permisiunile sunt complet customizabile per rol. Rezultatul: fiecare utilizator din service lucrează cu exact accesul de care are nevoie, nici mai mult, nici mai puțin.

Multi-tenancy și feature flags
Fiecare service auto are propria organizație cu site-uri multiple (pentru lanțuri de service). 8 module majore pot fi activate/dezactivate per organizație: jobs, orders, invoicing, stock management, purchase orders, estimates, scheduling, gestionare ITP. Asta permite un model de pricing în tiers: planuri cu funcționalități crescătoare.
Real-time
Dashboard-ul se actualizează în timp real prin WebSockets (Laravel Reverb + Pusher). Când un tehnician marchează o lucrare ca finalizată, recepționerul vede statusul instant. Notificări in-app, email și SMS pentru evenimente critice.
Stack tehnic
Backend (API): Laravel 11, PHP 8.1+, MySQL, Laravel Sanctum (auth API), Laravel Reverb (WebSockets), Filament v3 (admin panel), DomPDF + Browsershot (generare PDF), Pest (teste).
Frontend (Dashboard): React 19, TypeScript, Vite, Redux Toolkit (state management), TanStack Table (data tables), FullCalendar (scheduling), dnd-kit (drag-and-drop), Tailwind CSS, i18n (EN + RO), Laravel Echo (real-time).
Integrări: SMS Link (notificări SMS MOT/ITP), SMTP (email facturi/devize), PDF rendering server-side.
Rezultate
Platformă funcțională cu 8 module complete, multi-tenant, feature-flagged, cu suport bilingv (EN + RO). Arhitectura microservicii permite development paralel pe API și dashboard fără interferență. Fiecare modul poate fi activat independent per client, permițând un model SaaS scalabil.


