Script erstellt
This commit is contained in:
163
README.md
Executable file
163
README.md
Executable file
@@ -0,0 +1,163 @@
|
||||
# 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.
|
||||
Reference in New Issue
Block a user