Files
stechuhr3/SETUP.md
Torsten Schulz (local) e95bb4cb76 Initial commit: TimeClock v3 - Node.js/Vue.js Zeiterfassung
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
2025-10-17 14:11:28 +02:00

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