SynergyGig — HR & Workforce Management platform | JavaFX 21 · FastAPI · MySQL | Developed at Esprit School of Engineering – Tunisia | PIDEV 3A16 – 2025/2026
# SynergyGig
> A comprehensive HR & Workforce Management platform built with **JavaFX 21** — featuring real-time messaging, audio/video calls with live transcription, AI-powered HR tools, job scanning, training & certification, and community features.
---
## Table of Contents
- Overview
- Features
- Architecture
- Tech Stack
- Getting Started
- Configuration
- Project Structure
- Modules
- Screenshots
- Authors
---
## Overview
**SynergyGig** is a full-featured desktop application designed for modern HR and workforce management. It combines traditional HR operations (leave, attendance, payroll) with gig-economy tools (job offers, contracts, freelancer management) and modern collaboration features (real-time chat, video calls, AI assistants).
Built as a university capstone project at **ESPRIT** (Tunisia), SynergyGig demonstrates enterprise-level JavaFX development with REST API integration, WebSocket real-time communication, AI/ML services, and a rich modular UI.
---
## Features
### Core Platform
- **Authentication** — Email/password login, Face ID recognition, email verification, OTP password reset, CAPTCHA
- **User Profiles** — Avatars, bios, role-based access (Admin, HR Manager, Employee, Project Owner, Gig Worker)
- **Admin Panel** — User management, account freeze/unfreeze, role assignment
### Communication
- **Real-time Chat** — Private DMs, group chat rooms, emoji picker with color rendering
- **AI Chat Assistant** — Integrated AI-powered assistant in conversations
- **Audio Calls** — Voice calls via WebSocket relay with volume controls
- **Video Calls** — Screen sharing, webcam support, picture-in-picture preview
- **Live Transcription (CC)** — Real-time speech-to-text subtitles during calls via Groq Whisper API, with auto-translation support
### HR Management
- **Leave Management** — Request, approve/reject leaves with status tracking
- **Attendance Tracking** — Clock in/out, daily records
- **Payroll** — Salary computation, PDF export
- **E …