thats-me/backend/README.md
2025-04-01 10:49:26 +02:00

109 lines
3.4 KiB
Markdown

# Thats me Backend
Dies ist das Backend für die "Thats me"-Anwendung, basierend auf dem Laravel Framework.
## Technologie-Stack
- [Laravel](https://laravel.com/) (v12)
- [Livewire](https://livewire.laravel.com/)
- [Volt](https://livewire.laravel.com/docs/volt)
- [Vite](https://vitejs.dev/) (für Frontend-Asset-Kompilierung)
- [PHP](https://www.php.net/) (Version entsprechend den Laravel 12 Anforderungen, z.B. >= 8.2)
- [Composer](https://getcomposer.org/) (für PHP-Abhängigkeitsmanagement)
- [Node.js & NPM/Yarn](https://nodejs.org/) (für Vite/Frontend-Build-Prozess)
- [Flux] (https://fluxui.dev) (Componenten für das Backend)
## Installation
1. **Repository klonen** (falls noch nicht im Hauptprojekt geschehen):
```bash
git clone <repository-url>
cd <projekt-ordner>/backend # Oder der entsprechende Pfad zum Backend
```
2. **PHP Abhängigkeiten installieren:**
```bash
composer install
```
3. **Konfigurationsdatei erstellen:**
Kopiere die Beispiel-Umgebungsvariablendatei:
```bash
cp .env.example .env
```
\_Hinweis: Bearbeite die `.env`-Datei und konfiguriere insbesondere die Datenbankverbindung (`DB\__`) und die `APP_URL`.\*
4. **Anwendungsschlüssel generieren:**
```bash
php artisan key:generate
```
5. **Datenbankmigrationen ausführen:**
Stelle sicher, dass deine Datenbank konfiguriert ist (siehe Schritt 3).
```bash
php artisan migrate
```
_Optional: Wenn du Seed-Daten hast:_
```bash
php artisan db:seed # Optional
```
6. **Frontend Assets installieren und bauen:**
```bash
npm install # oder yarn install
npm run build # Baut die Assets für die Produktion
```
## Entwicklung
**Entwicklungsserver starten:**
Um den lokalen Laravel-Entwicklungsserver zu starten (normalerweise auf `http://127.0.0.1:8000`):
```bash
php artisan serve
#oder laravel herd (https://herd.laravel.com) #oder alternative PHP / MYSQL Serverumgebung (MAMP etc.)
```
**Frontend Assets mit Vite:**
Um den Vite-Server für Hot Module Replacement (HMR) während der Frontend-Entwicklung (innerhalb von Laravel/Blade/Livewire) zu starten:
```bash
npm run dev # oder yarn dev
```
Die Konfiguration für Vite (wie z.B. die Eingabedateien für CSS/JS und die Verwendung des Laravel-Plugins) wird in der Datei `vite.config.js` im Stammverzeichnis des Backends festgelegt. Diese Datei ist entscheidend dafür, wie Vite die Assets für die Laravel-Anwendung verarbeitet und bündelt.
_Hinweis: Der Vite-Server läuft normalerweise auf einem anderen Port (z.B. 5173) und arbeitet mit `php artisan serve` zusammen._
## Testing
Um die PHPUnit-Tests auszuführen:
```bash
php artisan test
```
## Livewire & Volt
Dieses Projekt nutzt Livewire und Volt für interaktive Frontend-Komponenten direkt im Backend-Code. Komponenten findest du typischerweise in:
- **Livewire:** `app/Livewire/` oder `app/Http/Livewire/` (je nach Konfiguration)
- **Volt:** Oft als Single-File-Komponenten direkt in den `resources/views/livewire/` oder `resources/views/components/` Verzeichnissen (als `.blade.php` Dateien mit `<script>` und `<style>` Sektionen).
Weitere Informationen findest du in der [Livewire Dokumentation](https://livewire.laravel.com/docs) und der [Volt Dokumentation](https://livewire.laravel.com/docs/volt).
## Mitwirken
[Hier Richtlinien für Beiträge hinzufügen, falls gewünscht. Ähnlich wie im Haupt-README.]
## Lizenz