b2in/dev/entwicklung.md
2026-01-23 17:33:10 +01:00

18 KiB

B2IN - Projekt-Entwicklungsstand

Projektübersicht

Das B2IN-Projekt ist eine umfassende Multi-Domain-Laravel-Anwendung, die als zentrale Plattform für Partner-Management, Produkt-Verwaltung und Digital Signage dient. Die Anwendung basiert auf Laravel 12, Livewire 3 und Flux UI und bietet ein modernes, rollenbasiertes System für verschiedene Geschäftspartner.

🎯 Wichtige ToDos

  • System Mails: Kommen teilweise nicht an (google etc) Probleme mit united domains ... In der Zukunft benötigen wir einen response bounce etc. " host gmail-smtp-in.l.google.com[64.233.184.27] said: 550-5.7.26 Your email has been blocked because the sender is unauthenticated. "

🎯 Kern-Technologien

  • Framework: Laravel 12 mit PHP 8.2+
  • Frontend: Livewire 3 mit Volt (Single-File Components)
  • UI-Framework: Flux UI (Pro-Version) mit Tailwind CSS
  • Authentifizierung: Laravel Fortify mit Sanctum
  • Berechtigungen: Spatie Laravel-Permission
  • Icons: Heroicons (Blade-Integration)
  • Entwicklungsumgebung: Laravel Sail (Docker)

Entwickelte Module & Funktionen

1. Multi-Domain-System

Status: Vollständig implementiert

Das System unterstützt mehrere Domains mit individuellen Themes und Konfigurationen:

  • Admin-Portal (portal.b2in.test) - Verwaltungsbereich für alle Partner-Typen
  • Haupt-Website (b2in.test) - Unternehmenswebsite
  • Landing-Pages - Individuelle Landing-Pages mit eigenem Branding
  • Domain-spezifische Assets - Separate CSS/JS-Builds pro Domain
  • Theme-Switching - Dynamisches Theme-System basierend auf Domain oder GET-Parameter
  • Entwicklungsmodus - Domain-Simulation für lokale Entwicklung ohne Hosts-Änderung

Technische Details:

  • Domain-Erkennung über ThemeServiceProvider
  • Separate Vite-Konfigurationen für Admin und Web
  • Dynamische Favicon-Generierung
  • Theme-basiertes Routing

2. Benutzer- & Rollen-Management

Status: Vollständig implementiert

Umfassendes Rollen- und Berechtigungssystem mit folgenden Rollen:

Definierte Rollen:

  • Super Admin - Vollzugriff auf alle Funktionen
  • Admin - Verwaltung von Partnern und System
  • Retailer (Händler) - Produktverwaltung, Kundenbetreuung, Liefergebiete
  • Manufacturer (Hersteller) - Marken- und Produktverwaltung
  • Broker (Makler) - Lead-Generierung, Provisionen, Kundenanbindung
  • Customer (Endkunde) - Produktbestellung, Dashboard-Zugriff

Berechtigungen:

  • Hub-Management (Anzeigen, Erstellen, Bearbeiten, Löschen)
  • Partner-Management (Anzeigen, Erstellen, Bearbeiten, Löschen, Provisionen)
  • Produkt-Management (Anzeigen, Erstellen, Bearbeiten, Löschen, Miet-Optionen)
  • Bestellungs-Management (Anzeigen, Verwalten)
  • User-Management (Anzeigen, Verwalten, Rollen zuweisen)
  • Dashboard-Zugriff
  • Bestellungen aufgeben

Spezielle Features:

  • Impersonation - Admins können sich als andere Benutzer einloggen
  • Soft-Delete - Benutzer werden anonymisiert statt gelöscht (bei Abhängigkeiten)
  • Rollenbasierte Navigation - Dynamische Sidebar basierend auf Berechtigungen
  • Display-Namen - Separate Anzeigenamen für Benutzer

3. Partner-Management-System

Status: Vollständig implementiert

Komplettes System zur Verwaltung von Geschäftspartnern:

Partner-Typen:

  • Retailer - Händler mit Liefer- und Montageradius
  • Manufacturer - Hersteller mit Markenverwaltung
  • Broker - Makler mit Provisionsmodell
  • Customer - Endkunden

Funktionen:

  • Partner-Einladungssystem:

    • E-Mail-Einladungen mit Token-basiertem Zugang
    • Konfigurierbare Gültigkeit (1-4 Wochen)
    • Status-Tracking (Offen, Verwendet, Abgelaufen)
    • Rollenbasierte Einladungen
    • Spezielle Status-Seiten für abgelaufene/verwendete Einladungen
  • Partner-Setup-Wizard:

    • Mehrstufiger Onboarding-Prozess
    • Rollenspezifische Schritte und Felder
    • Logo-Upload (Partner & Marke)
    • Adressverwaltung (Straße, PLZ, Stadt, Land)
    • Retailer: Liefer- und Montageradius (1-500 km)
    • Manufacturer: Markenerstellung mit Logo
    • Setup-Status-Tracking (setup_completed, setup_completed_at)
    • Middleware-Schutz für unvollständige Setups
  • **Partner-Hierarchie **:

    • Parent-Child-Beziehungen (Broker → Kunden)
    • Hub-Zuordnung für regionale Partner 🔄 Grundarchitektur vorhanden
    • Provisionsmodelle (Festbetrag oder Prozentsatz) 🔄 Grundarchitektur vorhanden
  • Registrierungs-Codes:

    • QR-Code-basierte Registrierung
    • Rollenspezifische Landing-Pages (/reg/{role})
    • Code-Tracking (Verwendet von, Verwendungsdatum)
    • Code-Namen für bessere Organisation
    • Zuordnung zu übergeordnetem Partner

4. Hub-Management

Status: 🔄 Grundarchitektur vorhanden

Regionale Hub-Verwaltung:

Funktionen:

  • Hub-Erstellung und -Verwaltung
  • Standortverwaltung (HubLocations)
  • Partner-Zuordnung zu Hubs
  • Hub-spezifische Dashboard-Ansichten
  • Indexseite mit Hub-Übersicht
  • Erstellen/Bearbeiten von Hubs

Datenstruktur:

  • Hub-Stammdaten
  • Mehrere Standorte pro Hub
  • Partner-Beziehungen

5. Produkt-Management-System

Status: 🔄 Grundarchitektur vorhanden

Umfassendes Produktverwaltungssystem:

Features:

  • Produktliste (/products):

    • Suchfunktion (Name, Artikelnummer)
    • Filter nach Status (Aktiv, Entwurf, Inaktiv)
    • Filter nach Kategorie
    • Aktive Filter-Anzeige
    • Responsive Tabellen-Ansicht
  • Produkt-Erstellung (/products/create):

    • Umfangreiches Formular für Produktdaten
    • Mehrstufige Eingabe
    • Bild-Upload
    • Varianten-Verwaltung

Datenmodelle:

  • Products - Hauptprodukte
  • ProductVariants - Produktvarianten mit Attributen
  • Attributes - Produkt-Attribute (z.B. Farbe, Größe)
  • AttributeValues - Attribut-Werte
  • Categories - Produktkategorien (mehrfach zuweisbar)
  • Tags - Produkt-Tags
  • Brands - Marken (Partner-zuweisbar)
  • Collections - Produkt-Kollektionen
  • TaxRates - Steuersätze
  • ShippingClasses - Versandklassen
  • ProductLogistics - Logistik-Informationen

Beziehungen:

  • Produkte → Kategorien (N:N)
  • Produkte → Tags (N:N)
  • Produkte → Verwandte Produkte (N:N)
  • Produkte → Marken
  • Varianten → Attribute & Werte

6. Dashboard-System

Status: 🔄 Grundarchitektur vorhanden

Rollenbasiertes Dashboard mit individuellen KPIs:

Admin-Dashboard:

  • Aktive & geplante Hubs
  • Partner-Wachstum (Gesamt, Dieser Monat)
  • Plattform-Umsatz (Platzhalter)
  • System-Status
  • Ausstehende Einladungen
  • Gesamt-Kunden

Retailer-Dashboard:

  • Offene Bestellungen
  • Monatlicher Umsatz
  • Produkt-Aufrufe
  • Lagerbestands-Warnungen
  • Meine Kunden

Manufacturer-Dashboard:

  • Marken-Reichweite
  • Aktive Produkte
  • Entwurfs-Produkte
  • Gesamt-Aufrufe

Broker-Dashboard:

  • Gesamt-Provision
  • Ausstehende Auszahlung
  • Generierte Leads
  • Empfehlungs-Link
  • Broker-Kunden

Customer-Dashboard:

  • Marken-spezifisches Branding
  • Top-Angebote
  • Broker-Information
  • Individuelles Design basierend auf zugewiesenem Broker

7. Digital Signage / Display-CMS

Status: Vollständig implementiert

Professionelles CMS-System für Digital Signage im Cabinet Showroom Bielefeld:

Video-Verwaltung:

  • Verwaltung von Video-Playlists
  • Reihenfolge-Verwaltung
  • Video-Position einstellen (0-100% für optimalen Ausschnitt)
  • Videos aktivieren/deaktivieren
  • Titel für bessere Organisation
  • Überschrift und Unterzeile
  • Optionale Ziel-URL
  • Automatische Short-Link-Generierung (6-stellige Codes)
  • QR-Code-Generierung für Short-Links
  • Echtzeit-Klick-Tracking
  • Klick-Statistiken im CMS
  • Reihenfolge-Verwaltung (30-Sekunden-Rotation)
  • Short-Code neu generieren
  • Klick-Zähler zurücksetzen
  • Flexibles Layout (mit/ohne URL)
  • Automatische Code-Generierung (z.B. c59kjb)
  • Short-URLs: https://cabinet.b2in.eu/go.php?z=CODE
  • Tracking in Datenbank + Log-Datei
  • Weiterleitung zur Original-URL
  • Statistik-Dashboard

Technische Details:

  • API-basierte Konfiguration (/api/display/config)
  • Standalone Display-Seite (/_cabinet/)
  • Auto-Reload alle 5 Minuten
  • Subdomain-Support (Live: cabinet.b2in.eu)
  • Test- und Live-Umgebung
  • Einheitlicher Pfad für beide Umgebungen

8. Authentifizierungs-System

Status: Vollständig implementiert

Modernes Auth-System basierend auf Laravel Fortify & Sanctum:

Features:

  • Login/Logout
  • Registrierung
  • E-Mail-Verifizierung
  • Passwort-Reset
  • Passwort-Bestätigung (für sensible Aktionen)
  • Two-Factor-Authentication (2FA)
  • API-Token-Authentifizierung (Sanctum)
  • "Remember Me" Funktionalität

Views:

  • Login-Seite (Standard & Vereinfacht)
  • Registrierungs-Seite
  • Passwort-vergessen
  • Passwort-zurücksetzen
  • E-Mail-Verifizierung

Einstellungen:

  • Profil-Verwaltung
  • Passwort-Änderung
  • Erscheinungsbild (Theme-Einstellungen)
  • Benutzer löschen/anonymisieren

9. Website-Frontend

Status: Grundstruktur und Inhalte implementiert

Moderne, responsive Website mit zahlreichen Sections:

Implementierte Seiten:

  • Home - Hauptseite mit Hero-Slider
  • About - Über uns
  • Ecosystem - Ökosystem-Darstellung
  • Partner - Partner-Informationen
  • Portfolio - Produkt-Portfolio
  • Magazin - Blog/Magazin mit Detail-Ansichten
  • Contact - Kontaktformular
  • Service - Service-Seite
  • FAQ - Häufig gestellte Fragen
  • Theme-Demo - Theme-Vorschau

Wiederverwendbare Sections:

  • Hero (Standard, mit Bild, Slider, Tiles)
  • About-Hero
  • Benefits-Section
  • Brand-Worlds
  • Broker-Section
  • Card-Section
  • Commitment-Section
  • Content-Section
  • CTA-Section
  • Dark-Stats-Section
  • Digital-Core
  • Ecosystem (Core, Hero, Stats)
  • End-Customer-Section
  • FAQ
  • Final-Commitment
  • Leadership-Team
  • Magazin (List, Detail)
  • Our-Story
  • Our-Values
  • Partner (Benefits, CTA, Hero, Process)
  • Portfolio
  • Spotlights-Section
  • Supplier-Section
  • Vision-Section

UI-Komponenten:

  • Header mit Navigation
  • Footer
  • Top-Bar
  • Kontaktformular
  • Theme-Switcher (für Demos)

10. E-Mail-System

Status: 🔄 Grundarchitektur vorhanden

E-Mail-Templates:

  • Partner-Einladung (PartnerInvitationMail)
  • Weitere System-E-Mails über Laravel-Fortify

11. Media-Verwaltung

Status: 🔄 Grundarchitektur vorhanden

  • Media-Tabelle für Datei-Uploads
  • Unterstützung für verschiedene Medientypen
  • Partner-Logos
  • Marken-Logos
  • Produkt-Bilder (vorbereitet)

12. Flux CMS Package (In Entwicklung)

Status: 🔄 Grundarchitektur vorhanden

Eigenes CMS-Package in packages/flux-cms/:

Geplante Features:

  • Component-First-Architecture
  • Code-as-Schema (Felder in PHP definiert)
  • Multi-Domain-Support
  • Vollständige Mehrsprachigkeit
  • Content-Versionierung
  • Media-Management
  • Performance-Optimierung

Package-Struktur:

  • core/ - Kern-Funktionalität, Models, Services
  • components/ - Livewire Backend & Frontend Components
  • starter-components/ - Vorgefertigte Starter-Components

🗄️ Datenbank-Struktur

Implementierte Tabellen:

Benutzer & Authentifizierung:

  • users - Benutzer-Accounts
  • roles - Rollen (Super Admin, Admin, Retailer, etc.)
  • permissions - Berechtigungen
  • role_has_permissions - Rollen-Berechtigungen-Zuordnung
  • model_has_roles - User-Rollen-Zuordnung
  • personal_access_tokens - API-Tokens (Sanctum)

Partner & Geschäftsbeziehungen:

  • partners - Partner-Stammdaten
  • partner_invitations - Einladungen mit Token & Status
  • registration_codes - QR-Code-basierte Registrierung
  • hubs - Regionale Hubs
  • hub_locations - Hub-Standorte

Produkte & Katalog:

  • products - Produkte
  • product_variants - Produkt-Varianten
  • product_variant_attributes - Varianten-Attribute
  • product_logistics - Logistik-Informationen
  • brands - Marken
  • categories - Kategorien
  • category_product - Produkt-Kategorie-Zuordnung
  • collections - Kollektionen
  • attributes - Attribute (Farbe, Größe, etc.)
  • attribute_values - Attribut-Werte
  • tags - Tags
  • product_tag - Produkt-Tag-Zuordnung
  • related_products - Verwandte Produkte
  • tax_rates - Steuersätze
  • shipping_classes - Versandklassen

Display/CMS:

  • display_videos - Video-Playlist für Digital Signage
  • display_footer_contents - Footer-Inhalte mit Short-Links & Tracking

System:

  • media - Media-Verwaltung
  • cache - Cache-Tabellen
  • jobs - Queue-Jobs
  • failed_jobs - Fehlgeschlagene Jobs

🎨 UI/UX Features

Design-System:

  • Flux UI Pro - Professionelle Komponenten-Bibliothek
  • Tailwind CSS - Utility-First CSS Framework
  • Heroicons - Konsistente Icon-Bibliothek
  • Dark Mode - Vollständige Dark-Mode-Unterstützung
  • Responsive Design - Mobile-First-Ansatz

Theme-System:

  • Domain-basiertes Theme-Switching
  • Individuelle Farbschemata pro Domain
  • Dynamische Asset-Verwaltung
  • Theme-Demo-Seite für Vorschau

Komponenten:

  • Flux Cards, Buttons, Inputs, Selects
  • Data Tables mit Pagination
  • Modals & Dialogs
  • Toast-Notifications
  • Form-Validierung
  • Loading States

📝 Dokumentation

Umfangreiche Entwicklungs-Dokumentation:

  • README.md - Projekt-Übersicht & Installation
  • CLAUDE.md - AI-Kontext-Dokumentation
  • dev/COMPONENT-STRUCTURE.md - Komponenten-Architektur
  • dev/DOMAINS-CONFIG.md - Domain-Konfiguration
  • dev/FORTIFY-SANCTUM-SETUP.md - Auth-Setup
  • dev/HERO-ICONS-USAGE.md - Icon-Verwendung
  • dev/LOCAL-DEVELOPMENT.md - Lokale Entwicklung
  • dev/PARTNER-SETUP-WIZARD.md - Partner-Onboarding
  • dev/DISPLAY_CMS_README.md - Display-CMS-Dokumentation
  • dev/DISPLAY_SETUP_LIVE.md - Display Live-Setup
  • dev/ENV_VARIABLES_DISPLAY.md - Display-Umgebungsvariablen
  • dev/THEME-SWITCHING.md - Theme-System
  • dev/THEME-DEMO-COMPONENTS.md - Theme-Demo

🔧 Entwicklungstools

Integrierte Tools:

  • Laravel Sail - Docker-Entwicklungsumgebung
  • Laravel Pail - Real-time Log-Viewer
  • Laravel Debugbar - Debug-Informationen
  • Laravel Pint - Code-Formatter
  • Pest PHP - Testing Framework
  • Laravel Dusk - Browser-Testing
  • NPM Concurrently - Parallel-Prozess-Management

Development-Scripts:

composer dev  # Startet Server, Queue, Logs & Vite parallel

🚀 Deployment-Bereitschaft

Produktions-Features:

  • Umgebungsspezifische Konfigurationen
  • Asset-Kompilierung (Vite)
  • Cache-System
  • Queue-System
  • Log-Management
  • Error-Handling
  • HTTPS-Ready

Optimierungen:

  • Autoloader-Optimierung
  • Route-Caching
  • Config-Caching
  • View-Caching

📊 Test-Abdeckung

Testing-Setup:

  • Pest PHP Framework installiert
  • TestCase-Struktur vorhanden
  • Browser-Testing mit Laravel Dusk
  • Feature & Unit Tests vorbereitet

Hinweis: Test-Implementierung kann bei Bedarf erweitert werden.


🔐 Sicherheit

Implementierte Sicherheitsfeatures:

  • CSRF-Protection (Laravel Standard)
  • SQL-Injection-Prevention (Eloquent ORM)
  • XSS-Protection (Blade Escaping)
  • Password-Hashing (Bcrypt)
  • E-Mail-Verifizierung
  • Two-Factor-Authentication
  • Rate-Limiting (vorbereitet)
  • Soft-Delete für DSGVO-Compliance
  • Benutzer-Anonymisierung

📦 Abhängigkeiten & Packages

Haupt-Abhängigkeiten:

  • laravel/framework ^12.0
  • laravel/fortify ^1.27
  • laravel/sanctum ^4.1
  • livewire/flux ^2.1.1
  • livewire/flux-pro ^2.6
  • livewire/volt ^1.7.0
  • spatie/laravel-permission ^6.17
  • blade-ui-kit/blade-heroicons ^2.6

Dev-Abhängigkeiten:

  • laravel/sail ^1.41
  • laravel/dusk ^8.2
  • pestphp/pest ^3.8
  • barryvdh/laravel-debugbar ^3.16
  • reliese/laravel ^1.4 (Model-Generator)

📈 Nächste Schritte & Empfehlungen

Kurzfristig (bereit für Implementierung):

  1. Bestellsystem - Order-Management für Kunden
  2. Produktbilder - Media-Upload für Produkte
  3. E-Mail-Templates - Erweiterte E-Mail-Kommunikation
  4. Benachrichtigungen - In-App-Notifications

Mittelfristig:

  1. Provisionsabrechnung - Automatisierte Provisionsberechnung
  2. Reporting & Analytics - Dashboard-Erweiterungen
  3. API-Erweiterung - REST-API für Externe
  4. Suchfunktion - Globale Suche über alle Inhalte

Langfristig:

  1. Mobile-App - Native Apps (via Sanctum-API)
  2. Mehrsprachigkeit - Internationalisierung
  3. Erweiterte CMS-Features - Flux-CMS-Package fertigstellen
  4. Payment-Integration - Zahlungsabwicklung

🎯 Projektstatus Zusammenfassung

Vollständig implementiert:

  • Multi-Domain-System mit Theme-Switching
  • Komplettes Benutzer- & Rollen-Management
  • Partner-Management mit Onboarding
  • Hub-Verwaltung
  • Produkt-Management (Grundfunktionen)
  • Rollenbasierte Dashboards
  • Digital Signage CMS mit Tracking
  • Authentifizierung & Sicherheit
  • Website-Frontend (Grundstruktur)
  • Dokumentation

🔄 In Arbeit:

  • Flux-CMS-Package (Architektur steht)
  • Erweiterte Produkt-Features
  • Test-Abdeckung

📋 Bereit für Umsetzung:

  • Bestellsystem
  • Provisionsabrechnung
  • Erweiterte Reporting-Funktionen
  • Payment-Integration

💡 Besonderheiten & Highlights

Technische Exzellenz:

  • Modern Stack - Neueste Laravel/Livewire-Versionen
  • Component-Architecture - Wiederverwendbare Livewire-Komponenten
  • Type-Safety - PHP 8.2+ Features
  • Performance - Optimierte Queries, Caching
  • Skalierbarkeit - Modularer Aufbau für Wachstum

Business-Features:

  • Multi-Tenant-Ready - Verschiedene Partner-Typen
  • Hierarchische Strukturen - Broker-Kunden-Beziehungen
  • Flexibles Provisionsmodell - Prozentsatz oder Festbetrag
  • Umfangreiches Tracking - Display-Klicks, User-Aktivitäten
  • White-Label-Fähigkeit - Domain-spezifisches Branding

User-Experience:

  • Intuitives Onboarding - Setup-Wizard für neue Partner
  • Rollenbasierte Ansichten - Jede Rolle sieht nur relevante Inhalte
  • Real-time Updates - Livewire für nahtlose Interaktion
  • Responsive Design - Funktioniert auf allen Geräten
  • Dark Mode - Moderne UI-Präferenzen

📞 Support & Wartung

Das System ist produktionsbereit und kann bei Bedarf mit folgenden Services erweitert werden:

  • Code-Reviews & Optimierungen
  • Feature-Erweiterungen
  • Bug-Fixes & Updates
  • Performance-Tuning
  • Sicherheits-Audits
  • Schulungen für Administratoren

Entwicklungsstand: Dezember 2025
Version: 1.0 (Production-Ready)
Framework: Laravel 12
PHP: 8.2+
Lizenz: MIT


Diese Dokumentation wurde automatisch generiert und gibt den aktuellen Stand der Entwicklung wieder.