No description
Find a file
Kevin Adametz 5a9aab7012 Migration: PM-Datum korrekt übernehmen, UUID stabil, Zwei-Phasen-Runbook
- published_at = Legacy-created_at (Publikationsdatum, Frontend-Sortier-
  schlüssel) statt updated_at, das bei Alt-Daten oft den Massen-/Migrations-
  stempel trägt und ein falsches "frisches" Datum erzeugte.
- created_at/updated_at per forceFill direkt im Import gesetzt (waren nicht
  fillable, wurden still verworfen) – Import allein ist jetzt datumssauber.
- legacy:fix-timestamps korrigiert zusätzlich published_at (status=published).
- PM-UUID bleibt beim Re-Import/Delta-Lauf erhalten (kein Neu-Würfeln).
- MIGRATION-STEPS auf Zwei-Phasen-Strategie umgestellt: migrate, Phase 1 mit
  --force, Phase 2 (Delta) ohne --force, Grandfather-Re-Run, Idempotenz-Tabelle.
- Tests: LegacyPressReleaseDateImportTest (published_at-Quelle, Entwurf,
  Force-Re-Import erhält UUID + Datum).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 13:32:48 +00:00
.agents/skills 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
.codex 19-05-2026 Rebrand Pressekonto, Hub-Flux UI und Legacy-Media-Migration 2026-05-19 16:36:13 +00:00
.devcontainer 22-05-2026 Optimierung der User und Admin Panels 2026-05-22 11:18:59 +02:00
.github/workflows first commit 2025-10-20 17:53:02 +02:00
_docs create PM v0.5 2026-05-20 19:14:39 +02:00
app Migration: PM-Datum korrekt übernehmen, UUID stabil, Zwei-Phasen-Runbook 2026-06-17 13:32:48 +00:00
bootstrap Frontend: Editorial-Relaunch der öffentlichen Strecke + Ausgaben-Routing 2026-06-16 16:39:28 +00:00
config WS-6: Google-Login via Laravel Socialite 2026-06-16 10:39:19 +00:00
database WS-3: Recht & Compliance – Rechts-Kern (DSGVO/Persönlichkeitsrecht/Melden + Queue) 2026-06-16 14:20:05 +00:00
dev Migration: PM-Datum korrekt übernehmen, UUID stabil, Zwei-Phasen-Runbook 2026-06-17 13:32:48 +00:00
docs WS-7: Live-Deployment-Checkliste + WS-6/WS-7 als erledigt dokumentiert 2026-06-17 13:32:35 +00:00
public User Panel: Phase-8-Abschluss, Titelbild/Lizenzen/Zeitzonen und KI-Pruef-Pipeline 2026-06-12 08:30:13 +00:00
resources Frontend: Editorial-Relaunch der öffentlichen Strecke + Ausgaben-Routing 2026-06-16 16:39:28 +00:00
routes Frontend: Editorial-Relaunch der öffentlichen Strecke + Ausgaben-Routing 2026-06-16 16:39:28 +00:00
storage/debugbar first commit 2025-10-20 17:53:02 +02:00
tests Migration: PM-Datum korrekt übernehmen, UUID stabil, Zwei-Phasen-Runbook 2026-06-17 13:32:48 +00:00
.cursorrules 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
.editorconfig first commit 2025-10-20 17:53:02 +02:00
.env.example WS-5: Buchungs-Gate launch-ready – proaktiver Dashboard-Hinweis 2026-06-16 16:37:16 +00:00
.gitattributes first commit 2025-10-20 17:53:02 +02:00
.gitignore 19-05-2026 Rebrand Pressekonto, Hub-Flux UI und Legacy-Media-Migration 2026-05-19 16:36:13 +00:00
.mcp.json 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
AGENTS.md 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
artisan first commit 2025-10-20 17:53:02 +02:00
boost.json 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
CLAUDE.md 19-05-2026 Rebrand Pressekonto, Hub-Flux UI und Legacy-Media-Migration 2026-05-19 16:36:13 +00:00
composer.json WS-6: Google-Login via Laravel Socialite 2026-06-16 10:39:19 +00:00
composer.lock WS-6: Google-Login via Laravel Socialite 2026-06-16 10:39:19 +00:00
docker-compose.yml Multi-Domain-Asset-Infrastruktur: geteilte Vite-Konfiguration und DomainAssetContext 2026-06-12 08:16:09 +00:00
package-lock.json first commit 2025-10-20 17:53:02 +02:00
package.json Multi-Domain-Asset-Infrastruktur: geteilte Vite-Konfiguration und DomainAssetContext 2026-06-12 08:16:09 +00:00
phpstan-baseline.neon 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
phpstan.neon 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
phpunit.xml User Panel: Phase-8-Abschluss, Titelbild/Lizenzen/Zeitzonen und KI-Pruef-Pipeline 2026-06-12 08:30:13 +00:00
pint.json 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
Readme.md 19-05-2026 Rebrand Pressekonto, Hub-Flux UI und Legacy-Media-Migration 2026-05-19 16:36:13 +00:00
setup-new-asset-urls.sh 19-05-2026 Rebrand Pressekonto, Hub-Flux UI und Legacy-Media-Migration 2026-05-19 16:36:13 +00:00
tailwind.portal.config.js Multi-Domain-Asset-Infrastruktur: geteilte Vite-Konfiguration und DomainAssetContext 2026-06-12 08:16:09 +00:00
tailwind.web.config.js 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
vite 13-05-2026 Frontend DEV + HUB 2026-05-13 18:11:03 +02:00
vite.config.js 19-05-2026 Rebrand Pressekonto, Hub-Flux UI und Legacy-Media-Migration 2026-05-19 16:36:13 +00:00
vite.portal.config.js Multi-Domain-Asset-Infrastruktur: geteilte Vite-Konfiguration und DomainAssetContext 2026-06-12 08:16:09 +00:00
vite.shared.js Multi-Domain-Asset-Infrastruktur: geteilte Vite-Konfiguration und DomainAssetContext 2026-06-12 08:16:09 +00:00
vite.web.config.js Multi-Domain-Asset-Infrastruktur: geteilte Vite-Konfiguration und DomainAssetContext 2026-06-12 08:16:09 +00:00

Multi-Domain Laravel-Anwendung

Übersicht

Diese Laravel-Anwendung unterstützt verschiedene Domains mit unterschiedlichen Styles:

Installation

  1. Repository klonen
  2. Abhängigkeiten installieren:
    composer install
    npm install
    
  3. Umgebungsvariablen konfigurieren (siehe .env.example und DOMAINS-CONFIG.md)
  4. Laravel-Anwendung initialisieren:
    php artisan key:generate
    php artisan migrate
    
  5. Assets kompilieren:
    npm run build
    npm run build:admin
    npm run build:web
    

Domain-Konfiguration

Die Domains werden über die .env-Datei konfiguriert. Für detaillierte Anweisungen siehe DOMAINS-CONFIG.md.

Lokaler Entwicklungsserver

php artisan serve

Asset-Kompilierung

Diese Anwendung verwendet Vite mit verschiedenen Konfigurationen:

  • Hauptkompilierung: npm run dev oder npm run build
  • Admin-Assets: npm run build:admin
  • Web-Assets: npm run build:web

Domain-Simulation

Während der Entwicklung können Domains simuliert werden, ohne die Hosts-Datei zu bearbeiten:

  1. In der .env-Datei: DEV_SIMULATE_DOMAIN=true
  2. Gewünschte Domain angeben: DEV_SIMULATED_DOMAIN=landing1.local

Favicons

Um Platzhalter-Favicons für alle konfigurierten Domains zu generieren:

php artisan domains:generate-favicons