Initial commit
Dieser Commit ist enthalten in:
136
README.md
Normale Datei
136
README.md
Normale Datei
@ -0,0 +1,136 @@
|
||||
# SkillMate - Mitarbeiter-Skills-Management für Sicherheitsbehörden
|
||||
|
||||
SkillMate ist eine spezialisierte Anwendung zur Verwaltung von Mitarbeiterfähigkeiten und -kompetenzen in Sicherheitsbehörden. Die Anwendung läuft lokal bei jedem Nutzer und kann über ein Admin-Panel zentral verwaltet werden.
|
||||
|
||||
## Features
|
||||
|
||||
- 🔍 **Skill-basierte Suche**: Finden Sie Mitarbeiter anhand ihrer Fähigkeiten
|
||||
- 👥 **Mitarbeiterverwaltung**: Umfassende Profile mit Skills, Sprachen und Spezialisierungen
|
||||
- 🔐 **Sicherheitsüberprüfungen**: Verwaltung von Ü2/Ü3-Clearances
|
||||
- 🌓 **Dark/Light Mode**: Anpassbare Benutzeroberfläche
|
||||
- 🔄 **Synchronisation**: Zentrale Datenverwaltung über Admin-Panel
|
||||
- 💻 **Offline-fähig**: Lokale SQLite-Datenbank für Offline-Betrieb
|
||||
|
||||
## Systemanforderungen
|
||||
|
||||
- Node.js 18.x oder höher
|
||||
- npm 8.x oder höher
|
||||
- Windows 10/11, macOS 10.15+, oder Linux
|
||||
|
||||
## Installation
|
||||
|
||||
### Windows
|
||||
|
||||
1. Führen Sie die Datei `setup.bat` aus
|
||||
2. Folgen Sie den Anweisungen auf dem Bildschirm
|
||||
|
||||
### macOS/Linux
|
||||
|
||||
1. Öffnen Sie ein Terminal im Projektverzeichnis
|
||||
2. Führen Sie aus: `./setup.sh`
|
||||
3. Folgen Sie den Anweisungen
|
||||
|
||||
## Entwicklung
|
||||
|
||||
### Alle Services starten
|
||||
|
||||
**Windows:** `start-dev.bat`
|
||||
**macOS/Linux:** `./start-dev.sh`
|
||||
|
||||
Dies startet:
|
||||
- Backend auf http://localhost:3001
|
||||
- Frontend auf http://localhost:5173
|
||||
- Admin Panel auf http://localhost:3002
|
||||
|
||||
### Einzelne Services
|
||||
|
||||
```bash
|
||||
# Backend
|
||||
cd backend && npm run dev
|
||||
|
||||
# Frontend (Electron)
|
||||
cd frontend && npm run dev
|
||||
|
||||
# Admin Panel
|
||||
cd admin-panel && npm run dev
|
||||
```
|
||||
|
||||
## Production Build
|
||||
|
||||
### Kompletten Build erstellen
|
||||
|
||||
**Windows:** `build-production.bat`
|
||||
**macOS/Linux:** `./build-production.sh`
|
||||
|
||||
### Ausgabe
|
||||
|
||||
- **Electron App**: `frontend/dist/` (Installer für Windows/macOS/Linux)
|
||||
- **Backend**: `backend/dist/` (Node.js Server)
|
||||
- **Admin Panel**: `admin-panel/dist/` (Static Web Files)
|
||||
|
||||
## Projektstruktur
|
||||
|
||||
```
|
||||
SkillMate/
|
||||
├── frontend/ # Electron Desktop App
|
||||
├── backend/ # Express.js API Server
|
||||
├── admin-panel/ # React Admin Interface
|
||||
├── shared/ # Gemeinsame TypeScript-Typen
|
||||
├── setup.bat # Windows Setup-Script
|
||||
├── setup.sh # Unix Setup-Script
|
||||
├── start-dev.bat # Windows Dev-Start
|
||||
├── start-dev.sh # Unix Dev-Start
|
||||
└── README.md # Diese Datei
|
||||
```
|
||||
|
||||
## Standard-Login
|
||||
|
||||
**Admin Panel:**
|
||||
- Benutzername: `admin`
|
||||
- Passwort: `admin123`
|
||||
|
||||
⚠️ **WICHTIG**: Ändern Sie das Standard-Passwort nach der ersten Anmeldung!
|
||||
|
||||
## Konfiguration
|
||||
|
||||
### Backend (.env)
|
||||
```env
|
||||
JWT_SECRET=your-secret-key
|
||||
PORT=3001
|
||||
NODE_ENV=production
|
||||
LOG_LEVEL=info
|
||||
```
|
||||
|
||||
### Admin Panel (.env)
|
||||
```env
|
||||
VITE_API_URL=http://your-server:3001/api
|
||||
```
|
||||
|
||||
## Deployment
|
||||
|
||||
### Lokale Desktop-App
|
||||
|
||||
1. Erstellen Sie den Production Build
|
||||
2. Verteilen Sie den Installer aus `frontend/dist/`
|
||||
3. Die App enthält das Backend und läuft komplett lokal
|
||||
|
||||
### Admin Panel im Netzwerk
|
||||
|
||||
1. Kopieren Sie `admin-panel/dist/` auf einen Webserver
|
||||
2. Konfigurieren Sie die Backend-URL in der `.env`
|
||||
3. Stellen Sie sicher, dass das Backend erreichbar ist
|
||||
|
||||
## Sicherheit
|
||||
|
||||
- JWT-basierte Authentifizierung
|
||||
- Rollenbasierte Zugriffskontrolle (Admin, Poweruser, User)
|
||||
- Lokale Datenhaltung mit SQLite
|
||||
- Verschlüsselte Verbindungen (HTTPS in Production)
|
||||
|
||||
## Support
|
||||
|
||||
Bei Fragen oder Problemen erstellen Sie bitte ein Issue im Projekt-Repository.
|
||||
|
||||
## Lizenz
|
||||
|
||||
Proprietär - Nur für den internen Gebrauch in Sicherheitsbehörden.
|
||||
In neuem Issue referenzieren
Einen Benutzer sperren