6aac8b0a163a6d0821daf502ebe87c397ee3afd2
- Mandant, Auftragnehmer, Projekt mit Suchreihenfolge, Abschnitt (PFA), Vertrag, Leistungsverzeichnis, Nachtrag (MKA nur als Bezug), Nachtragsposition, Dokument - Projektmitglieder mit Projektrolle, Freigaben für vertrauliche Dokumente - Mandant, Land und Projekt werden vom übergeordneten Datensatz übernommen; Fehlzuordnungen über Mandanten oder Projekte hinweg werden abgewiesen - Feste Morph-Map, Factories, Demodaten (Musterbahn, PFA 1–4, N14/N16/N21), Tests Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
KI-BauIN
KI-gestützte Prüfung von Mehrkostenanzeigen und Nachträgen im Bahnbau.
Laravel 13, Livewire 4, TallStackUI 4, Fortify, Spatie laravel-permission, Pest. Entwicklung mit
Laravel Sail: PHP 8.5, MySQL 8.4, Meilisearch, Mailpit. Details und Begründungen in
docs/tech-stack.md, Arbeitsregeln für Claude Code in CLAUDE.md.
Einrichten
Voraussetzungen: Linux bzw. WSL2 mit Docker, PHP ≥ 8.3 und Composer (nur für den ersten
composer install), Node, gitleaks.
Unter WSL2 das Projekt im Linux-Dateisystem ablegen (z. B. ~/code), nicht unter /mnt/c.
cp .env.example .env
composer install
./vendor/bin/sail up -d
./vendor/bin/sail artisan key:generate
./vendor/bin/sail artisan migrate
npm install && npm run dev
git config core.hooksPath .githooks # gitleaks vor jedem Commit
| Dienst | Adresse |
|---|---|
| Anwendung | http://localhost:8080 |
| Mailpit (E-Mails) | http://localhost:8025 |
| Meilisearch | http://localhost:7700 |
| MySQL | localhost:3307 (Benutzer sail, Passwort password) |
Die Ports 80 und 3306 sind auf dem Entwicklungsrechner belegt, daher APP_PORT und
FORWARD_DB_PORT in .env.
Täglich
./vendor/bin/sail up -d # starten
./vendor/bin/sail artisan test # Tests
./vendor/bin/sail bin pint # Code-Stil
./vendor/bin/sail bin phpstan analyse # statische Analyse
./vendor/bin/sail composer require … # Pakete immer im Container installieren (PHP 8.5)
./vendor/bin/sail down # stoppen
Festlegungen
- Keine Selbstregistrierung: Benutzer legt ein Administrator an.
- 2FA (Authenticator-App) und Passkeys sind verfügbar, 2FA ist noch nicht verpflichtend.
- Meilisearch: Version fest eingestellt, Telemetrie aus (
MEILISEARCH_NO_ANALYTICS=true). - Git: führend ist der lokale Gitea; der Gitea von ITM folgt als Push-Mirror.
Languages
PHP
64%
Blade
30%
Python
5.4%
JavaScript
0.3%
CSS
0.2%
Other
0.1%