- Benutzer-Login mit JWT-Authentifizierung
- HomeOffice-CheckIn (Start) und CheckOut (Stopp)
- Übersicht über Einträge eines Tages
- Automatischer E-Mail-Versand an HR
- Live-Timer im Dashboard für Arbeitnehmer
- Node.js und npm installiert
- MongoDB installiert und laufend (Standard-Port:
27017)
Prüfen:
node -v
npm -v
mongod --versionℹ️ MongoDB starten (macOS über Brew):
brew services start mongodb/brew/mongodb-community
cp .env.example .envDann .env befüllen:
MONGODB_URI=mongodb://localhost:27017/homeoffice
JWT_SECRET=deinGeheimnis
HR_EMAIL=hr@example.com
SMTP_HOST=smtp.example.com
SMTP_PORT=587
SMTP_USER=example@example.com
SMTP_PASS=passwort123Dann:
npm install
npm run devDas Backend läuft auf http://localhost:3001
cd frontend
npm install
npm startDas Frontend läuft auf http://localhost:3000
- Backend und Frontend starten
- Nutzer registrieren (einmalig):
curl -X POST http://localhost:3001/auth/register \
-H "Content-Type: application/json" \
-d '{"username":"testuser","password":"pass123"}'- Über das UI einloggen
- Auf dem Dashboard: HomeOffice starten/beenden
- In der Übersicht: vergangene CheckIns nach Datum einsehen
# Backend-Tests ausführen:
npx jest/frontend → React-Client
/backend → Express-Server (API, Auth, DB, Mail)
Die App versendet beim Stoppen automatisch eine Mail an HR.
Funktioniert über SMTP, z. B. mit Gmail oder Mailhog.
Cedric Wiese
Stand: 25. Juni 2025