164 lines
4.4 KiB
Markdown
Executable File
164 lines
4.4 KiB
Markdown
Executable File
# 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
|
|
1. Repository klonen:
|
|
```bash
|
|
git clone <repository-url>
|
|
cd neonail-database
|
|
```
|
|
|
|
2. Abhängigkeiten installieren:
|
|
```bash
|
|
composer install
|
|
```
|
|
|
|
3. Umgebungsvariablen konfigurieren:
|
|
```bash
|
|
cp .env.example .env
|
|
php artisan key:generate
|
|
```
|
|
|
|
4. Datenbank einrichten:
|
|
```bash
|
|
php artisan migrate
|
|
```
|
|
|
|
5. Storage-Link erstellen:
|
|
```bash
|
|
php artisan storage:link
|
|
```
|
|
|
|
6. Admin-Benutzer erstellen:
|
|
```bash
|
|
php artisan tinker
|
|
```
|
|
```php
|
|
App\Models\User::create([
|
|
'name' => 'Admin',
|
|
'email' => 'admin@neonail.com',
|
|
'password' => bcrypt('password')
|
|
]);
|
|
```
|
|
|
|
7. Server starten:
|
|
```bash
|
|
php artisan serve
|
|
```
|
|
|
|
## Verwendung
|
|
|
|
### Admin-Zugang
|
|
- **E-Mail**: admin@neonail.com
|
|
- **Passwort**: password
|
|
|
|
### Benutzer-Flow
|
|
1. **Anmeldung**: Benutzer melden sich mit ihren Zugangsdaten an
|
|
2. **Sammlung anzeigen**: Übersicht über alle eigenen Lacke
|
|
3. **Lack hinzufügen**: Aus verfügbaren Lacken auswählen
|
|
4. **Hersteller verwalten**: Hersteller erstellen und verwalten
|
|
5. **Suchen**: Schnelle Suche nach Namen oder Nummer
|
|
6. **Bilder**: Kamera-Upload für neue Lacke (Admin)
|
|
|
|
### Admin-Flow
|
|
1. **Dashboard**: Übersicht über Statistiken
|
|
2. **Benutzer verwalten**: CRUD-Operationen für Benutzer
|
|
3. **Nagellacke verwalten**: Vollständige Verwaltung der Lacke
|
|
4. **Hersteller verwalten**: Verwaltung aller Hersteller
|
|
5. **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
|
|
1. Migration erstellen: `php artisan make:migration`
|
|
2. Model anpassen/erstellen
|
|
3. Controller-Logik implementieren
|
|
4. Views erstellen
|
|
5. Routes definieren
|
|
|
|
### Testing
|
|
```bash
|
|
php artisan test
|
|
```
|
|
|
|
## Deployment
|
|
|
|
### Produktionsumgebung
|
|
1. `.env` für Produktion konfigurieren
|
|
2. `APP_ENV=production` setzen
|
|
3. `APP_DEBUG=false` setzen
|
|
4. Datenbank-Migrationen ausführen
|
|
5. 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:
|
|
1. Issues im Repository erstellen
|
|
2. Dokumentation prüfen
|
|
3. Laravel-Dokumentation konsultieren
|
|
|
|
## Lizenz
|
|
|
|
Dieses Projekt ist für interne Nutzung bestimmt.
|