# B2IN – Projekt-Entwicklungsstand **Stand:** März 2026 · **Laravel** 12 · **Livewire** 4 · **Volt** · **Flux UI** (Pro) --- ## Projektübersicht Die Anwendung ist eine **Multi-Domain-Laravel-Plattform** für Partner-Onboarding, Produkt- und Hub-Verwaltung, **öffentliche Marketing-Websites** (mehrere Marken/Domains) und **Digital Signage** (Cabinet/Displays). Das **Flux-CMS** (`packages/flux-cms`) ist als Paket eingebunden und steuert zunehmend **Content und Medien** für die Web-Auftritte; klassische Display-Verwaltung (Videos, Footer, Versionen) bleibt über **eigene Admin-Livewire-Komponenten** erreichbar. --- ## Wichtige ToDos - **System-E-Mail / Zustellung:** Teilweise Ausfälle oder Blocklisten (z. B. Gmail mit SPF/DKIM-Themen bei united-domains). Langfristig: saubere Domain-Auth, Bounce-Handling, Monitoring. - **Bestellsystem / Orders:** Berechtigungen sind im `RoleSeeder` vorbereitet (`view orders`, `manage orders`); fachliche Umsetzung und UI folgen. --- ## Kern-Technologien | Bereich | Technologie | |--------|-------------| | Backend | Laravel 12, PHP ^8.2 (in der Praxis oft 8.4 in der Dev-Umgebung) | | Frontend (Portal) | Livewire 4, Volt (Single-File-Komponenten), Flux UI Pro | | Frontend (öffentliche Sites) | Livewire-Sections, Tailwind CSS 4, Alpine.js | | Auth | Laravel Fortify, Sanctum (API), E-Mail-Verifizierung, 2FA möglich | | Rechte | Spatie Laravel Permission | | Tests | Pest, PHPUnit 11 | | Assets | Vite (getrennte Builds z. B. Portal / Web) | | Dev | Laravel Sail **oder** Dev Container – in `CLAUDE.md` sind direkte `php`/`composer`/`npm`-Kommandos beschrieben | **Hinweis Volt + Livewire 4:** Funktionale Volt-Dateien sollten im PHP-Block **kein erstes `new …`** enthalten (Compiler-Einschränkung); objektorientierte Hilfsklassen liegen z. B. unter `app/Services/`. --- ## Rollen & Berechtigungen (Ist-Zustand) Definiert u. a. in `database/seeders/RoleSeeder.php` (Namen exakt so in der Datenbank): | Rolle | Kurzbeschreibung | |-------|------------------| | **Customer** | Endkunde, Produkt-/Order-sichtbar (eigene Orders) | | **Estate-Agent** | Makler – Dashboard, Partner-Übersicht, Hubs einsehen | | **Retailer** | Händler – eigene Produkte anlegen/bearbeiten, Miet-Optionen | | **Manufacturer** | Hersteller – analog Retailer | | **Admin** | Voller operativer Zugriff inkl. Partner, Hubs, **Produkt-Kuration**, User | | **Super-Admin** | für erweiterte Systemzugriffe vorgesehen (Gate/Policy-Pattern) | Die ältere Doku sprach teils von „Broker“ – im Code heißt die Rolle **Estate-Agent**. --- ## Entwickelte Module & Funktionen (Auswahl) ### 1. Multi-Domain-System **Status:** produktiv genutzt - Domains konfigurierbar (`config/domains.php`, siehe `dev/DOMAINS-CONFIG.md`) - **Portal:** z. B. `portal.b2in.test` – Admin-Backend - **Öffentliche Sites:** z. B. `b2in.test`, weitere Marken-Domains mit Theme-Wechsel - **ThemeServiceProvider**, domainbezogene Vite-Build-Verzeichnisse - Optional: Simulation einer Domain per `.env` für lokales Testen --- ### 2. Partner-Management & Onboarding **Status:** stabil im Einsatz - Einladungen (`PartnerInvitationMail`), Token, Ablauf - **Partner-Setup-Wizard** (`EnsurePartnerSetupCompleted` – unvollständiges Setup leitet zum Wizard) - Registrierung über Codes, rollenspezifische Landing-Routes (`/reg/...`) - Hierarchien und Provisionen: **Datenmodell und Berechtigungen** vorhanden; Ausbaustufen für Abrechnung siehe Roadmap --- ### 3. Hub-Management **Status:** CRUD und Verknüpfungen nutzbar - Admin-Routen für Hubs und Standorte (`hub_locations`) - Detailausbauten (Analytics, automatische Zuweisung) roadmap --- ### 4. Produkt-Management **Status:** deutlich über „Grundgerüst“ hinaus - Partner können u. a. **Standard-** und **Teaser-Produkte** anlegen/bearbeiten (Volt-Formulare) - **Admin-Kuration:** Rolle `Admin`, Permission `curate products` – Freigabe/Status (Tests in `tests/Feature/ProductCurationTest.php`) - Katalog-Modell: Produkte, Varianten, Kategorien, Marken, Tags, Logistik u. a. --- ### 5. Digital Signage (Cabinet / Displays) **Status:** betrieben; technische Doku unter `dev/DISPLAY_CMS_README.md`, `dev/DISPLAY_SETUP_LIVE.md` - Admin: Display-Versionen, Playlists, Footer-Links, Shortlink/Tracking (siehe bestehende README) - Öffentliche/Showroom-Assets u. a. unter `public/_cabinet/` - APIs z. B. Display-Konfiguration (`routes/domains.php`) Parallel existiert die **Flux-CMS-Medienverwaltung** für Website-Assets – beide Welten können koexistieren (unterschiedliche Einsatzgebiete). --- ### 6. Flux CMS (Package-Integration) **Status:** **eingebunden und im Portal bedienbar** – kontinuierliche Content-Pflege und Ausbau - Paketpfad: `packages/flux-cms/` (`core`, `components`, `starter-components`) - Composer: `flux-cms/core` (path repository) - **Portal-Routen (Auszug):** u. a. `admin/flux-cms` (Dashboard), Content, Projekte, Medien, Artikel – Namen wie `cms.dashboard`, `cms.content.index`, … - **App-Integration:** Hilfsfunktionen (`cms()`, `media_url()`, … in `app/helpers.php`), Models wie `CmsContent`, `CmsProject`, `CmsArticle` (Migrationen u. a. `cms_projects`, `cms_articles`) - Architekturüberblick: `packages/flux-cms/ARCHITECTURE.md` - **Ziel laut `dev/flux-cms/tasks.md`:** bestehende B2IN-Website schrittweise ins CMS überführen; weitere Subseiten später --- ### 7. Öffentliche Website & Content-Strategie **Status:** laufende inhaltliche Ausrichtung - Viele Seiten als **Livewire-Section-Komponenten** unter `app/Livewire/Web/Components/Sections/` - **Immobilien-Fokus (Soft Launch):** strategische Ausrichtung und Text-Briefings liegen in `dev/12-03-2026/tasks.md` (Fokus Dubai/Immobilien, Möbel/Einrichtung zunächst nur Teaser; bestehende Inhalte konservieren, ggf. über ergänzende/„versteckte“ Pfade wie bei Theme-Demos) - Routen u. a. `/immobilien`, `/immobilien/{slug}` – Sektionen u. a. über `cms_theme_section('…')` pro Theme-Key (siehe `resources/views/web/immobilien.blade.php`) --- ### 8. Authentifizierung & Einstellungen **Status:** produktiv - Fortify-Features (Login, Register, Reset, Verify, 2FA) - Profil, Passwort, Erscheinungsbild (Volt) --- ### 9. Admin-Extras - **Projekt-Dokumentation** im Portal: Route `admin/documentation` rendert diese Datei `dev/entwicklung.md` (Service `App\Services\ProjectDocumentationContent`) - **Impersonation** für Admins - **CMS/Display-Admin:** getrennte Oberflächen für Flux-CMS und klassische Display-Pflege (siehe Routen oben) --- ## Datenbank (Auszug) Neben den Kern-Tabellen (User, Partner, Produkte, Hubs, Display-Tabellen, …) u. a.: - **`cms_projects`**, **`cms_articles`** – projekt-/artikelbezogene CMS-Daten (App-Models) - Flux-CMS-Paket kann je nach Migration weitere `flux_cms_*`-Tabellen mitbringen – bei Deploy/Tests Migrationen aus Core + App berücksichtigen --- ## Dokumentation im Repository | Pfad | Inhalt | |------|--------| | `Readme.md` | Projektüberblick | | `CLAUDE.md` | Dev-Container, Befehle, Tests (SQLite) | | `dev/DOMAINS-CONFIG.md` | Domains & `.env` | | `dev/LOCAL-DEVELOPMENT.md` | Lokales Setup | | `dev/PARTNER-SETUP-WIZARD.md` | Partner-Wizard | | `dev/DISPLAY_*.md` | Display/Cabinet | | `dev/THEME-SWITCHING.md` | Themes | | `dev/12-03-2026/tasks.md` | Aktuelle Web-/Immobilien-Briefings | | `packages/flux-cms/ARCHITECTURE.md` | CMS-Architektur | *(Es gibt kein `dev/HERO-ICONS-USAGE.md` mehr – Icons: Flux/Heroicons nach Projektstandard.)* --- ## Tests & Qualität - **Pest**-Feature-Tests u. a. für Auth, Partner, Produkte, CMS-Admin, Display-APIs - Vor Releases sinnvoll: `php artisan test` (bzw. im Container/Sail das Projekt-Äquivalent) - **Laravel Pint** für PHP-Code-Stil --- ## Roadmap (Kurz) **Kurzfristig** - E-Mail-Zustellung / Domain-Reputation stabilisieren - Immobilien- und Teaser-Content gemäß `dev/12-03-2026/tasks.md` weiterziehen - Flux-CMS: bestehende Startseite/Kernseiten vollständig pflegbar machen **Mittelfristig** - Bestellprozess end-to-end - Provisionslogik - Reporting **Langfristig** - API-Erweiterungen, ggf. Mobile-Clients über Sanctum - Internationalisierung dort, wo fachlich nötig --- ## Projektstatus – Kompakt | Bereich | Einordnung | |---------|------------| | Multi-Domain & Themes | stabil | | Auth & Rollen | stabil | | Partner & Wizard | stabil | | Produkte inkl. Kuration | weit fortgeschritten | | Hubs | nutzbar, Ausbau möglich | | Display/Cabinet | stabil | | Flux CMS | **integriert**, Content-Ausbau läuft | | Öffentliche Website | live-tauglich, Schwerpunkt Immobilien/Soft Launch | | Bestellsystem | vorbereitet, nicht abgeschlossen | --- *Diese Datei ist die Referenz für die interne Projekt-Dokumentation (`admin/documentation`) und soll bei größeren Meilensteinen angepasst werden.*