Zurück zum Portfolio
kaloni.gr — Zweisprachiger Laravel-Schuh-Onlineshop

kaloni.gr — Zweisprachiger Laravel-Schuh-Onlineshop

Wir haben kaloni.gr entworfen und entwickelt — einen zweisprachigen (Griechisch/Englisch) Laravel-12-Onlineshop für eine Damenschuhmarke mit Sitz in Serres. Das Storefront unterstützt Produktvarianten (Größe + Farbe), farbgefilterte Galerien, Wunschliste (Session für Gäste, DB für authentifizierte Benutzer mit Merge beim Login), kürzlich angesehene Produkte, Autocomplete-Suche und Echtzeit-Versandzonenerkennung. Zahlungen nutzen eine Gateway-agnostische Abstraktion (PaymentGatewayInterface mit DTO-gestützten Ergebnissen), die Stripe 3DS, Cardlink Hosted-Redirect mit HMAC-SHA256-Digest-Verifizierung, Banküberweisung, Nachnahme und Bezahlung bei Abholung unterstützt. Das Admin-Panel deckt Produkte/Varianten/Kategorien, Gutscheine, Versandzonen, Bestelllebenszyklus und Zahlungsstatusübergänge, Bewertungsmoderation, Newsletter- und Wieder-verfügbar-Abonnements, Kundenverwaltung mit DSGVO-Selbstlöschung (Anonymisierung vs. Hard-Delete) und Aktivitätsprotokollierung ab. Zweisprachige Inhalte nutzen dedizierte *_translations-Tabellen mit intelligenter Locale-Fallback-Kette (URL-Präfix → Session → Benutzerpräferenz → Config), die SEO-freundliche /el/- und /en/-URLs mit Hreflang-Alternativen und Organization/WebSite-JSON-LD auf jeder Seite antreiben. Bilder werden über Intervention Image v3 mit responsiven <picture>-Srcsets und WebP-Geschwistern ausgeliefert; Inline-Skripte sind CSP-konform über Vite-Nonces; GA4-E-Commerce-Tracking (view_item, add_to_cart, purchase) ist an die Cookie-Zustimmung gebunden. Die Geschäftslogik ist in 23 Service-Klassen für ein API-fähiges Fundament isoliert.

Technologien

Laravel 12 PHP 8.3 Alpine.js Custom CSS (BEM) MySQL Intervention Image v3 Stripe (3DS) Cardlink Laravel Breeze + Google OAuth Multilingual (el/en) JSON-LD / SEO Responsive Design GA4 E-commerce Vite

Herausforderungen

Der Aufbau eines Multi-Gateway-Zahlungssystems, das sowohl synchrone (Nachnahme, Banküberweisung) als auch asynchrone Redirect-Flows (Stripe 3DS, Cardlink HMAC) sauber unterstützt — bei gleichzeitig einfachem zweisprachigem Inhaltsmodell und schnellem Katalog über Hunderte von Produktvarianten.

Lösungen

Wir entwarfen ein PaymentGatewayInterface mit DTO-gestützten Ergebnissen, sodass sich jedes Gateway hinter derselben API einfügt; nutzten dedizierte *_translations-Tabellen mit einer Fallback-Kette (URL-Präfix → Session → Benutzerpräferenz → Config), sodass Übersetzungen pro Entität an einer Stelle leben; und cachten responsive WebP-Geschwister über Intervention Image v3 und lieferten sie via <picture>-Srcsets mit expliziten Dimensionen zur CLS-Vermeidung.