Features: - Backend: Node.js/Express mit MySQL/MariaDB - Frontend: Vue.js 3 mit Composition API - UTC-Zeithandling für korrekte Zeiterfassung - Timewish-basierte Überstundenberechnung - Wochenübersicht mit Urlaubs-/Krankheits-/Feiertagshandling - Bereinigtes Arbeitsende (Generell/Woche) - Überstunden-Offset für historische Daten - Fixed Layout mit scrollbarem Content - Kompakte UI mit grünem Theme
174 lines
3.0 KiB
Markdown
174 lines
3.0 KiB
Markdown
# TimeClock v3 - Schnellstart-Anleitung
|
|
|
|
## Schritt-für-Schritt Installation
|
|
|
|
### 1. Voraussetzungen prüfen
|
|
|
|
Stellen Sie sicher, dass Node.js installiert ist:
|
|
|
|
```bash
|
|
node --version # sollte v16 oder höher sein
|
|
npm --version
|
|
```
|
|
|
|
### 2. Abhängigkeiten installieren
|
|
|
|
#### Option A: Alles auf einmal (empfohlen)
|
|
```bash
|
|
npm run install:all
|
|
```
|
|
|
|
#### Option B: Manuell
|
|
```bash
|
|
# Root-Abhängigkeiten
|
|
npm install
|
|
|
|
# Backend-Abhängigkeiten
|
|
cd backend
|
|
npm install
|
|
|
|
# Frontend-Abhängigkeiten
|
|
cd ../frontend
|
|
npm install
|
|
```
|
|
|
|
### 3. Backend-Konfiguration
|
|
|
|
Erstellen Sie eine `.env` Datei im `backend/` Verzeichnis:
|
|
|
|
```bash
|
|
cd backend
|
|
cp .env.example .env
|
|
```
|
|
|
|
Standardwerte in `.env`:
|
|
```env
|
|
PORT=3000
|
|
NODE_ENV=development
|
|
```
|
|
|
|
### 4. Anwendung starten
|
|
|
|
#### Option A: Beide Server gleichzeitig (empfohlen)
|
|
```bash
|
|
# Im Root-Verzeichnis
|
|
npm run dev
|
|
```
|
|
|
|
Dies startet:
|
|
- Backend auf `http://localhost:3010`
|
|
- Frontend auf `http://localhost:5010`
|
|
|
|
#### Option B: Server einzeln starten
|
|
|
|
**Terminal 1 - Backend:**
|
|
```bash
|
|
cd backend
|
|
npm run dev
|
|
```
|
|
|
|
**Terminal 2 - Frontend:**
|
|
```bash
|
|
cd frontend
|
|
npm run dev
|
|
```
|
|
|
|
### 5. Anwendung öffnen
|
|
|
|
Öffnen Sie Ihren Browser und navigieren Sie zu:
|
|
```
|
|
http://localhost:5010
|
|
```
|
|
|
|
## Erste Schritte
|
|
|
|
1. **Timer starten**
|
|
- Geben Sie ein Projekt ein (z.B. "Website-Entwicklung")
|
|
- Optional: Fügen Sie eine Beschreibung hinzu
|
|
- Klicken Sie auf "Starten"
|
|
|
|
2. **Timer läuft**
|
|
- Die Zeit wird in Echtzeit angezeigt
|
|
- Sie können den Timer jederzeit stoppen
|
|
|
|
3. **Einträge ansehen**
|
|
- Navigieren Sie zu "Einträge"
|
|
- Sehen Sie alle Ihre Zeiteinträge
|
|
- Löschen Sie Einträge bei Bedarf
|
|
|
|
4. **Statistiken**
|
|
- Navigieren Sie zu "Statistiken"
|
|
- Sehen Sie Ihre Gesamtarbeitszeit
|
|
- Überblick nach Projekten
|
|
|
|
## Fehlerbehebung
|
|
|
|
### Port bereits in Verwendung
|
|
|
|
**Backend (Port 3010):**
|
|
```bash
|
|
# Linux/Mac
|
|
lsof -ti:3010 | xargs kill -9
|
|
|
|
# Windows
|
|
netstat -ano | findstr :3010
|
|
taskkill /PID <PID> /F
|
|
```
|
|
|
|
**Frontend (Port 5010):**
|
|
```bash
|
|
# Linux/Mac
|
|
lsof -ti:5010 | xargs kill -9
|
|
|
|
# Windows
|
|
netstat -ano | findstr :5010
|
|
taskkill /PID <PID> /F
|
|
```
|
|
|
|
### API-Verbindungsfehler
|
|
|
|
Stellen Sie sicher, dass:
|
|
1. Das Backend auf Port 3010 läuft
|
|
2. Das Frontend auf Port 5010 läuft
|
|
3. Keine Firewall die Verbindung blockiert
|
|
|
|
### Module nicht gefunden
|
|
|
|
```bash
|
|
# Alle node_modules löschen und neu installieren
|
|
rm -rf node_modules backend/node_modules frontend/node_modules
|
|
npm run install:all
|
|
```
|
|
|
|
## Produktion
|
|
|
|
### Frontend bauen
|
|
```bash
|
|
cd frontend
|
|
npm run build
|
|
```
|
|
|
|
Die fertigen Dateien befinden sich in `frontend/dist/`
|
|
|
|
### Backend für Produktion
|
|
```bash
|
|
cd backend
|
|
NODE_ENV=production npm start
|
|
```
|
|
|
|
### Frontend für Produktion bereitstellen
|
|
|
|
Die gebauten Dateien aus `frontend/dist/` können auf jedem Webserver bereitgestellt werden:
|
|
- Nginx
|
|
- Apache
|
|
- Netlify
|
|
- Vercel
|
|
- GitHub Pages
|
|
|
|
## Nächste Schritte
|
|
|
|
- Lesen Sie die vollständige [README.md](README.md)
|
|
- Sehen Sie sich die [API-Dokumentation](backend/README.md) an
|
|
- Passen Sie die Anwendung nach Ihren Bedürfnissen an
|
|
|