60259a365586657e22a1f809c07f024e7d11255a
Implements Single Sign-On with Authentik alongside the existing password login. Admins configure Client ID, Client Secret and Base URL directly in the app; the SSO button on the login page only appears when the configuration is complete and enabled. - SsoSetting model + migration (one-row config table) - sso_provider_id / is_sso_user fields on users (migration) - SsoController: redirect to Authentik + callback (token exchange, userinfo fetch, auto-create unknown users) - Admin\SsoSettingController + admin/sso/show view with setup guide and one-click Redirect URI copy - Admin dropdown: SSO-Konfiguration entry - Login page: Authentik button rendered conditionally No additional Composer packages required. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
NeoNail Datenbank
Eine Laravel-basierte Webanwendung zur Verwaltung von NeoNail-Nagellack-Sammlungen. Die Anwendung ermöglicht es Benutzern, ihre persönliche Nagellack-Sammlung zu verwalten und ist speziell für die mobile Nutzung optimiert.
Features
Für Benutzer
- Persönliche Sammlung: Benutzer können ihre NeoNail-Lacke verwalten
- Mobile Optimierung: Handy-optimiertes Design für schnelle Nutzung im Laden
- Suchfunktion: Suche nach Namen oder Nummer der Lacke
- Bild-Upload: Möglichkeit, Bilder per Handykamera hochzuladen
- Hersteller-Verwaltung: Erstellen und verwalten von Herstellern
- Responsive Design: Funktioniert auf allen Geräten
Für Administratoren
- Benutzer-Verwaltung: Erstellen, bearbeiten und löschen von Benutzern
- Nagellack-Verwaltung: Vollständige CRUD-Operationen für Nagellacke
- Hersteller-Verwaltung: Verwaltung aller Hersteller im System
- Bildoptimierung: Automatische Optimierung hochgeladener Bilder
- Statistiken: Übersicht über Benutzer, Sammlungen und Hersteller
- Admin-Dashboard: Übersichtliche Verwaltungsoberfläche
Technische Details
Datenbank-Struktur
- Users: Benutzer-Verwaltung
- Manufacturers: Hersteller-Daten (Name, Beschreibung, Website, Land)
- NailPolishes: Nagellack-Daten (Name, Nummer, Hersteller, Bild)
- UserNailPolishes: Many-to-Many Beziehung zwischen Benutzern und Lacken
Technologien
- Laravel 12: PHP-Framework
- Bootstrap 5: CSS-Framework für responsive Design
- Intervention Image: Bildoptimierung
- SQLite: Datenbank (für einfache Entwicklung)
Installation
Voraussetzungen
- PHP 8.2+
- Composer
- Node.js (optional für Asset-Compilation)
Setup
- Repository klonen:
git clone <repository-url>
cd neonail-database
- Abhängigkeiten installieren:
composer install
- Umgebungsvariablen konfigurieren:
cp .env.example .env
php artisan key:generate
- Datenbank einrichten:
php artisan migrate
- Storage-Link erstellen:
php artisan storage:link
- Admin-Benutzer erstellen:
php artisan tinker
App\Models\User::create([
'name' => 'Admin',
'email' => 'admin@neonail.com',
'password' => bcrypt('password')
]);
- Server starten:
php artisan serve
Verwendung
Admin-Zugang
- E-Mail: admin@neonail.com
- Passwort: password
Benutzer-Flow
- Anmeldung: Benutzer melden sich mit ihren Zugangsdaten an
- Sammlung anzeigen: Übersicht über alle eigenen Lacke
- Lack hinzufügen: Aus verfügbaren Lacken auswählen
- Hersteller verwalten: Hersteller erstellen und verwalten
- Suchen: Schnelle Suche nach Namen oder Nummer
- Bilder: Kamera-Upload für neue Lacke (Admin)
Admin-Flow
- Dashboard: Übersicht über Statistiken
- Benutzer verwalten: CRUD-Operationen für Benutzer
- Nagellacke verwalten: Vollständige Verwaltung der Lacke
- Hersteller verwalten: Verwaltung aller Hersteller
- Statistiken: Detaillierte Auswertungen
Mobile Optimierung
Die Anwendung ist speziell für mobile Geräte optimiert:
- Touch-freundlich: Große Buttons und Touch-Targets
- Kamera-Integration: Direkter Zugriff auf Handykamera
- Responsive Design: Anpassung an verschiedene Bildschirmgrößen
- Schnelle Navigation: Optimiert für schnelle Nutzung im Laden
Sicherheit
- Authentifizierung: Laravel's eingebaute Auth-System
- Admin-Middleware: Geschützte Admin-Bereiche
- Bildvalidierung: Sichere Bild-Uploads
- CSRF-Schutz: Automatischer CSRF-Schutz
Entwicklung
Hinzufügen neuer Features
- Migration erstellen:
php artisan make:migration - Model anpassen/erstellen
- Controller-Logik implementieren
- Views erstellen
- Routes definieren
Testing
php artisan test
Deployment
Produktionsumgebung
.envfür Produktion konfigurierenAPP_ENV=productionsetzenAPP_DEBUG=falsesetzen- Datenbank-Migrationen ausführen
- Storage-Links erstellen
Empfohlene Server-Konfiguration
- Webserver: Nginx oder Apache
- PHP: 8.2+ mit erforderlichen Extensions
- Datenbank: MySQL/PostgreSQL für Produktion
- SSL: HTTPS für sichere Übertragung
Support
Bei Fragen oder Problemen:
- Issues im Repository erstellen
- Dokumentation prüfen
- Laravel-Dokumentation konsultieren
Lizenz
Dieses Projekt ist für interne Nutzung bestimmt.
Description
Webseite mit der User ihre NeoNail Farben Einpflegen können, damit sie wissen welche sie haben
354 KiB
Languages
Blade
68.4%
PHP
31.4%
CSS
0.1%