- Livewire-Starter-Kit (Livewire 4, Flux, Fortify) mit Pest - Sail mit PHP 8.5, MySQL 8.4, Redis, Meilisearch 1.54.2, Mailpit - Registrierung deaktiviert, 2FA und Passkeys verfügbar - Spatie laravel-permission - gitleaks als Pre-Commit-Hook (.githooks) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
51 lines
1.8 KiB
Markdown
51 lines
1.8 KiB
Markdown
# KI-BauIN
|
|
|
|
KI-gestützte Prüfung von Mehrkostenanzeigen und Nachträgen im Bahnbau.
|
|
|
|
Laravel 13 mit dem Livewire-Starter-Kit (Livewire 4, Flux, Fortify), Spatie laravel-permission,
|
|
Pest. Entwicklung mit Laravel Sail: PHP 8.5, MySQL 8.4, Redis, Meilisearch, Mailpit.
|
|
|
|
## Einrichten
|
|
|
|
Voraussetzungen: Linux bzw. WSL2 mit Docker, PHP ≥ 8.3 und Composer (nur für den ersten
|
|
`composer install`), Node, [gitleaks](https://github.com/gitleaks/gitleaks).
|
|
Unter WSL2 das Projekt im Linux-Dateisystem ablegen (z. B. `~/code`), nicht unter `/mnt/c`.
|
|
|
|
```bash
|
|
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
|
|
|
|
```bash
|
|
./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 des Kunden folgt als Push-Mirror.
|