Komplet SaaS service / booking system
Planbooking er et fleksibelt og skalerbart booking system bygget med moderne teknologier og bedste praksis inden for webudvikling. Den velstrukturerede kodebase og brugen af standardiserede rammeværk gør det nemt at udvide og tilpasse systemet til forskellige forretningsbehov. Et SaaS booking system der er lavet til at kunne supportere mange forskellige typer af forretninger i deres booking og klinik håndtering. Der online booking, service, produkter, personale, kalender, hjemmeside og kasse moduler i systemet.
Økonomiske nøgletal
Da virksomheden endnu ikke har været i gang. Er det svært at nævne nogen af disse tal. Men man kan tage et kig på konkurrenterne på proff og se at det bestemt ikke er en dårlig forretningsmodel og der er rigeligt med plads til en ny spiller.
Produktet
Planbooking er et SaaS booking system der er lavet til at kunne supportere mange forskellige typer af forretninger i deres booking og klinik håndtering. Der online booking, service, produkt oprettelse, personale, kalender, komplet hjemmesidebygger, timer, kassesystem og mange andre funktioner. Dette er man nød til grave sig dybere ind i selv.
# Server
Den anbefalede serveropsætning vil være en Linux Ubuntu server med:
- Nginx
- Redis
- MySQL
- PHP 8.2
# Backend
Systemet er udviklet i Laravel 10. Der er benyttet klassisk MVC tilgang med de fleste af CRUD actions i særskilte og opdelte serviceklasser. Der er en god opdeling af backend koden og den er godt kommenteret.
Der er brugt Inertia frameworket til at binde front-end sammen med backend.
Alt data opbevares i MySQL database som kører på samme server som webserveren.
# Frontend
Frontenden er lavet i React & Typescript sammen med Inertia.js som bindeled mellem Controllere og frontend.
Det er skrevet i moderne functional react componenter med en god opdeling og et fuldt component library med genanvendelige komponenter. Dermed er systemet meget nemt at udvide og customize.
Der er brugt Tailwind CSS frameworket som CSS framework til styling af applikationen.
# Arkitektur og Design
Planbooking er bygget på en moderne webapplikationsarkitektur, der kombinerer en robust backend udviklet i Laravel 10 og en responsiv frontend udviklet i React og TypeScript. Systemet benytter Inertia.js til at skabe en sømløs integration mellem frontend og backend, hvilket eliminerer behovet for traditionelle API'er og muliggør hurtigere udvikling og bedre ydeevne.
# Routing og Kontroller
Laravel's routing system bruges til at definere applikationens URL endpoints. Her er en oversigt over nogle af de vigtigste ruter og deres tilhørende controllere:
- CalendarController: Håndterer kalenderfunktionalitet såsom visning af kalender, oprettelse og opdatering af begivenheder.
- ServiceController: Administrerer tjenester, herunder oprettelse, redigering og sletning af tjenester.
- BookingController: Håndterer bookingprocessen, herunder oprettelse og styring af bookinger.
- CashierController: Står for kassefunktionalitet, herunder gennemførelse af salg, visning af kvitteringer og afstemning.
- WebsiteController: Administrerer klientens hjemmesider, inklusive oprettelse af sider, sektioner og håndtering af domæner.
Ruterne er organiseret i grupper med middleware for at sikre, at kun autoriserede brugere har adgang til bestemte dele af systemet. Der er også separate ruter for offentlig tilgængelige funktioner såsom online booking og hjemmesider.
# Tjenestelag
Forretningslogikken er kapslet ind i serviceklasser, hvilket fremmer genbrug og vedligeholdelighed af koden. Dette tillader også en klar adskillelse mellem kontrollerne og den faktiske logik, hvilket gør koden mere testbar og lettere at vedligeholde.
# Sikkerhed
Systemet anvender Laravel's indbyggede autentificering og autorisationsmekanismer. Middleware som `auth`, `verified` og `role` bruges til at kontrollere brugeradgang på tværs af applikationen. Desuden er der implementeret beskyttelse mod almindelige web-sikkerhedstrusler såsom CSRF, SQL-injektion og XSS.
# Ydeevne og Skalering
- Caching: Redis bruges til caching for at forbedre ydeevnen ved at reducere databaseforespørgsler.
- Load Balancing: Nginx er konfigureret som webserver og kan opsættes til load balancing for at håndtere øget trafik.
- Database Optimering: MySQL-databasen er optimeret med korrekte indeks og normalisering for at sikre hurtige forespørgsler.
# Deployment og Continuous Integration
- Deployment: Systemet kan deployeres ved hjælp af automatiserede scripts, der håndterer installation af afhængigheder, migrering af databaser og opdatering af statiske filer.
- Continuous Integration: Integrerede værktøjer kan bruges til automatiseret test og deployment ved ændringer i koden.
# Test og Kvalitetssikring
- Enhedstest: Laravel's indbyggede testframework bruges til at skrive enhedstest for kritiske dele af applikationen.
- Integrationstest: Test af interaktion mellem forskellige systemkomponenter for at sikre, at de fungerer korrekt sammen.
# Dokumentation og Kommentarer
Koden er velkommenteret, hvilket gør det lettere for udviklere at forstå og vedligeholde systemet. Der er også ekstern dokumentation for API'er og andre vigtige systemfunktioner.
# Tredjepartsintegrationer
Systemet er designet til at kunne integrere med tredjepartsservices såsom betalingsgateways, e-mail tjenester og eksterne API'er. Dette gør det muligt at udvide funktionaliteten efter behov.
# Konklusion
Planbooking er et fleksibelt og skalerbart booking system bygget med moderne teknologier og bedste praksis inden for webudvikling. Den velstrukturerede kodebase og brugen af standardiserede rammeværk gør det nemt at udvide og tilpasse systemet til forskellige forretningsbehov.
Markedsføringskanaler
Et bureau har designet et professionelt og unikt design som medfølger og matcher platformen.
Der er et par store spillere på markedet, men efter et hav af kontakt med mindre virksomheder som bruger en service som denne, er der uden tvivl plads til en mere. Der er derfor lavet en masse forbedringer og de minusser som vi har hørt konkurrenterne har måtte have, dem har vi sørget for at gøre til plusser.
Abonnement løsning - kunderne betaler pr. måned
Omkostninger
Abonnement løsning - kunderne betaler pr. måned
Ca. 500-1000 kr om måneden til server og apps.
Koster ikke det store i starten, før der kommer godt med kunder på platformen.
Mailgun
Getaway API
Amazon
Stripe
DigitalOcean
Server
Virksomhedens historie
Der er brugt 2 år på udvikling og udvikleren har vurderet at der er software for ca. 500.000 kr.
Sælges kun billigt, da fokus er på min søn og jeg desværre derfor ikke får tid til udleve drømmen.
Ideel køber
Det kræver man har forstand på det sprog som det er udviklet i.
Jeg har selv fået det udviklet, er selv tidl. snedker, så jeg har ikke forstanden på det.
Der er stadig nogen små ting hist og pist som skal laves, for at det hele spiller.
Opstartshjælp
Udvikler hjælper dog gerne med at flytte og opsætte systemet på en server for (10.000 kr, ikke inkluderet i salgsprisen). Ellers sendes alle filer naturligvis, så man selv kan sætte det op. Han hjælper også gerne med videreudvikling på det hvis ønskes, men den dialog kan man tage med udvikleren.
Få hjælp af en virksomhedsmægler