ELSAMA
Elsama Luxury Marble : En flerspråklig, redaksjonell plattform for marmor og arkitektoniske overflater, designet for å konvertere førsteklasses nettlesing til kvalifiserte kommersielle forespørsler.
Elsama Luxury Marble
En flerspråklig, redaksjonell plattform for marmor og arkitektoniske overflater, designet for å konvertere førsteklasses nettlesing til kvalifiserte kommersielle forespørsler.
Elsama Luxury Marble er en porteføljedrevet Laravel-applikasjon bygget for en bedrift innen high-end materialer som trenger mer enn bare et brosjyrenettsted. Den presenterer prosjekter, materialer, blogginnhold, attester og tjenesteposisjonering på en måte som samtidig støtter merkevaretroverdighet og salgskonvertering. Plattformen er optimalisert for internasjonale publikum, med lokaltilpasset ruting, RTL-støtte (høyre-til-venstre) og oversatt innhold lagret direkte i domenemodellen. På driftssiden driver den samme kodebasen en offentlig Inertia React-opplevelse og et Filament CMS/admin-lag for administrasjon av innhold, forespørsler og analyse.
Kjerneprodukt og Verdi
- Ytelse og Skalerbarhet: Den offentlige opplevelsen leveres gjennom Inertia v2 med SSR-støtte, «eager-loaded» relasjoner, slanke JSON-ressurser, bufrede innstillinger, databasebaserte køer og bildekonvertering til WebP for raskere sideinnlasting.
- UX/UI-kvalitet: Grensesnittet benytter et luksuriøst, redaksjonelt visuelt språk med storformattypografi, bildeorienterte oppsett, responsive kort, «last-inn-mer»-blogginteraksjoner, klebrig WhatsApp-konverteringsknapp og språkbevisst endring av layoutretning.
- Sikkerhet og Pålitelighet: Forespørsler valideres på serversiden, er hastighetsbegrenset per IP, settes i kø for levering, og speiles til både det interne teamet og den potensielle kunden. Admin-flaten er isolert bak Filament-autentisering, mens «soft deletes» for innhold og sesjonsbasert språkbevaring reduserer operasjonell risiko.
Teknisk Arkitektur og Stack
Frontend
- Rammeverk: React 18 med Inertia.js v2 og SSR-inngangspunkter i
resources/js/app.tsxogresources/js/ssr.tsx. - Tilstand og Navigasjon: Inertia-ruter,
useForm, rutehjelpere via Ziggy, og klientside-paginering/filtrering for katalog- og bloggvisninger. - Stil og Bevegelse: Tailwind CSS, Headless UI, Framer Motion, og en bevisst mørk redaksjonell palett skreddersydd for et førsteklasses materialmerke.
- UI-mønstre: Offentlig layout-skall, gjenbrukbare kort og handlingsknapper (CTA), gjengivelse av flerspråklig innhold, og responsiv helte/seksjonskomposisjon.
- Rikt innhold: TipTap er tilgjengelig for CMS-innholdsproduksjon i langformat i administrasjonspanelet.
Backend / API
-
Rammeverk: Laravel 13 med klassisk MVC-ruting og Inertia-responser for det offentlige nettstedet.
-
Domenemodellering: JSON-oversatte felt for navn, beskrivelser, SEO-tekst og blogginnhold; slug-basert «route model binding»; soft deletes på kjerne-katalogentiteter.
-
Datatilgang: Dedikerte API-ressurser normaliserer medie-URL-er, oversatt innhold og relasjonelle nyttelaster før de når frontenden.
-
Forretningstjenester: En oversettelseshjelper løser språktilbakefall, en innstillingsmodell bufret global konfigurasjon, analyse lagres gjennom et tjenestelag, og bilder konverteres til WebP før lagring.
DevOps og Infrastruktur
- Lokal kjøretid: Prosjektet er designet for en standard PHP + Node-verktøykjede og Laravel Herd. Ingen Docker-stakk er forpliktet i depotet.
- Køer og E-post: Databasekø er standard, med købaserte forespørselsvarsler og loggbasert e-post konfigurert for lokal utvikling.
- Lagring: Offentlige medier skrives til
public-disken og serveres frastorage/app/public. - Bygge-rørledning: Vite kompilerer klient-pakken og SSR-pakken, mens depot-skriptene også starter app-tjeneren, kølytteren og logg-overvåkeren samtidig under utvikling.
- Bufring: Laravel cache brukes for globale innstillinger, og konfigurasjonen kan byttes til andre støttede drivere når miljøet krever det.
Arkitekturflyt
flowchart LR
Browser[Offentlig Nettleser] --> Inertia[Inertia React Sider]
Inertia --> Controllers[Laravel Kontrollere]
Controllers --> Resources[API Ressurser + Språkbehandler]
Controllers --> Models[Eloquent Modeller + Tjenester]
Models --> DB[(MySQL / SQLite)]
Models --> Cache[(Laravel Cache)]
Controllers --> Queue[(Databasekø)]
Queue --> Mail[Forespørsels-e-poster]
Controllers --> Storage[(Offentlig Lagring / WebP Medier)]
Admin[Filament Admin] --> Controllers
Admin --> Models
Controllers --> Analytics[(Analyse-logger)]
Dypdykk i nøkkelteknologi
1. Språkbevisst innholdslevering
Utfordringen er ikke bare å oversette strenger; det er å holde URL-er, layoutretning og innholdsnyttelaster konsistente på tvers av seks språk, samtidig som man bevarer SEO-vennlige slugs og forretningslesbare tekster. Løsningen bruker et {locale}-ruteprefiks, sesjonsbasert språkbevaring og en LocaleManager som løser oversatte verdier fra JSON-kolonner med fornuftige tilbakefall. Arabisk behandles som RTL (høyre-til-venstre) på layoutlaget, slik at det offentlige skallet oppdaterer dokumentretningen dynamisk i stedet for å stole på dupliserte maler.
2. Konverteringsfokusert forespørselsprosess
Et forespørselsskjema med høy verdi må være raskt, troverdig og motstandsdyktig mot misbruk. Kontaktkontrolleren validerer nyttelasten på serversiden, lagrer den som en forespørselsregistrering, og setter to e-poster i kø: én til det interne teamet og én som et automatisk svar til den potensielle kunden. En dedikert «rate-limiting»-middleware begrenser innsendinger per IP, noe som beskytter leveringsdyktigheten og holder salgs-innboksen ren uten å skape friksjon for legitime potensielle kunder.
3. Medierik katalog og redaksjonelt CMS
Nettstedet presenterer materialer, prosjekter og artikler som en visuell katalog, ikke som flate databaseregistreringer. Kontrollere laster bilde- og relasjonsdata effektivt («eager-load»), ressurser normaliserer medie-URL-er og oversatt innhold, og frontenden gjengir kategorifiltre, progressiv blogginnlasting og store visuelle kort med minimal klientside-kompleksitet. På admin-siden tilbyr Filament et strukturert CMS og analyse-dashbord slik at ikke-utviklere kan oppdatere innhold, administrere forespørsler og overvåke trafikkmønstre uten å røre applikasjonskoden.