README.md aktualisiert

This commit is contained in:
2026-01-07 16:01:31 +01:00
parent 01656ac67d
commit 6b81f91959

119
README.md
View File

@@ -1,65 +1,86 @@
# Fitnessblog (Laravel) chatgpt-agent % bash -lc cat /home/oai/share/report.md | sed -n '1,20p'
[![Laravel](https://img.shields.io/badge/Laravel-Framework-red)](#)
[![PHP](https://img.shields.io/badge/PHP-%3E%3D%208.1-777bb4)](#)
[![License](https://img.shields.io/badge/License-MIT-green)](#lizenz)
Professionelle Blog-Plattform auf Basis von Laravel mit Fokus auf Fitness-/Lifestyle-Content. Enthält Beitragsverwaltung, Medien-Uploads, Kategorien/Tags und typische Blog-Features. ## AdminZugang
> Hinweis: Diese README ist als professionelle Vorlage gedacht. Ersetze Platzhalter (Domain, Versionen, Features) nach Bedarf.
--- chatgpt-agent % bash -lc cat /home/oai/share/report.md | sed -n '121,140p'
## Inhalt
- [Features](#features)
- [Tech-Stack](#tech-stack)
- [Voraussetzungen](#voraussetzungen)
- [Installation (lokal)](#installation-lokal)
- [Konfiguration](#konfiguration)
- [Datenbank & Migrationen](#datenbank--migrationen)
- [Build & Assets](#build--assets)
- [Tests](#tests)
- [Deployment](#deployment)
- [Troubleshooting](#troubleshooting)
- [Sicherheit](#sicherheit)
- [Contributing](#contributing)
- [Lizenz](#lizenz)
--- - Melde dich unter `/admin/login` an. Ein erster AdminBenutzer kann via `php artisan tinker` erstellt werden:
## Features
- Beiträge erstellen/bearbeiten/veröffentlichen (Draft/Published)
- Kategorien & Tags
- Bild-/Medienverwaltung (Uploads)
- Suchfunktion (optional)
- SEO-Basics (Meta-Tags, saubere URLs)
- Admin-Bereich (optional / je nach Implementierung)
> Ergänze hier deine konkreten Features (z.B. Kommentare, Newsletter, CKEditor, Rollen/Rechte, API, etc.). ```php
\App\Models\User::create([
'name' => 'Admin',
'username' => 'admin',
'email' => 'admin@example.com',
'password' => bcrypt('geheim'),
'status' => \App\UserStatus::Active,
]);
```
---
## Tech-Stack - Nach dem Login stehen Dashboard, Beitragsverwaltung, Kategorien, Slider und Einstellungen zur Verfügung【260995794809889†L45-L90】. Beachte, dass nur Benutzer mit der Rolle *SuperAdmin* Einstellungen ändern dürfen【716868813219956†L69-L79】.
- **Backend:** Laravel
- **PHP:** >= 8.1 (empfohlen 8.2/8.3 je nach Server)
- **Datenbank:** MySQL/MariaDB (alternativ SQLite/PostgreSQL)
- **Frontend:** Blade / Vite (je nach Setup)
- **Package Manager:** Composer, npm
---
## Voraussetzungen ## Deployment (Produktion)
- PHP (inkl. typischer Extensions für Laravel)
- Composer
- Node.js + npm
- MySQL/MariaDB (oder andere DB)
- Git
---
## Installation (lokal) 1. **Server vorbereiten** Installiere PHP ≥ 8.2, Composer, Node.js und einen Webserver (Apache/Nginx). Konfiguriere den Webserver so, dass das `public`Verzeichnis als Root dient und `index.php` als FallbackRoutenhandler.
2. **Umgebungsvariablen setzen** Setze `APP_ENV=production` und `APP_DEBUG=false`. Passe `APP_URL` an deine Domain an und konfiguriere die Mail und Datenbankvariablen.
chatgpt-agent % bash -lc cat /home/oai/share/report.md | sed -n '141,160p'
3. **Caches & Optimierung** Führe vor jedem Release aus:
### 1) Repository klonen
```bash ```bash
git clone <REPO_URL> php artisan config:cache
cd <PROJEKT_ORDNER> php artisan route:cache
php artisan view:cache
php artisan optimize
npm run build
```
4. **Jobs & Cron** Wenn das Projekt QueueJobs nutzt (z.B. NewsletterVersand), richte einen QueueWorker via Supervisor oder systemd ein und plane den Scheduler (`php artisan schedule:run`) per Cron.
## Troubleshooting & Tipps
- **Lange Dateinamen unter Windows** Git kann unter Windows Probleme mit sehr langen Dateipfaden haben (z.B. bei hochgeladenen Bildern). Aktiviere lange Pfade mit `git config --global core.longpaths true`. Benenne Dateien möglichst kurz, wenn beim Commit Fehler wie „Filename too long“ auftreten.
- **Uploads und Rechte** Achte darauf, dass `storage/` und `bootstrap/cache/` für den Webserver schreibbar sind (Berechtigungen 775 oder 777 je nach Setup). Profilbilder und Logos werden direkt im `public/images`Verzeichnis gespeichert【716868813219956†L98-L148】【716868813219956†L169-L178】.
- **Newsletter** Abonnenten erhalten nur dann eine EMail, wenn ein Post als sichtbar (`visibility = 1`) markiert wird【277929543452449†L347-L349】【277929543452449†L360-L381】. Überprüfe, ob dein Mailserver korrekt konfiguriert ist und Mails versendet werden.
- **SEO** Passe in den Einstellungen Titel, MetaBeschreibung und Keywords an dein Projekt an; sie werden auf der Startseite und den Kategorieseiten verwendet【490713492725882†L23-L47】. Aktualisiere auch die SocialLinks, damit Buttons korrekt funktionieren【587727673959283†L34-L50】.
chatgpt-agent % bash -lc cat /home/oai/share/report.md | sed -n '161,180p'
## Sicherheitshinweise
- **Schütze geheime Schlüssel** Die `.env`Datei sollte nie in das Repository eingecheckt werden; stattdessen umgebungsabhängig auf dem Server hinterlegt werden. APISchlüssel und Passwörter dürfen nicht in der Versionskontrolle landen.
- **Updates** Halte Laravel und die verwendeten Pakete aktuell (`composer update` und `npm update`). Teste Updates in einer StagingUmgebung, bevor du sie produktiv einsetzt.
- **Backups** Lege regelmäßige Datenbank und Dateibackups an, insbesondere für `storage/app/public` und die Datenbank.
## Lizenz
Die Anwendung basiert auf dem LaravelSkeleton und steht unter der **MITLizenz**【156200196044006†L53-L58】. Weitere Details findest du in der `LICENSE`Datei des Projekts.
---
Diese Dokumentation fasst den aktuellen Stand des Projekts zum **7. Januar 2026** zusammen. Bei Änderungen im Repository sollten die genannten Versionsanforderungen und Funktionen aktualisiert werden. Bei offenen Fragen oder Problemen können Issues im GiteaRepository erstellt werden.
chatgpt-agent %