A comprehensive employee time tracking and management system designed for German labor law compliance, featuring automated reporting and intuitive workforce management.
Chrono Staff is a professional-grade employee time tracking application built to streamline workforce management while ensuring compliance with German labor regulations. The system provides comprehensive time tracking, automated break calculation, overtime monitoring, and generates detailed PDF reports for payroll and compliance purposes.
- π₯ Employee Management: Complete employee lifecycle management with detailed profiles
- β° Advanced Time Tracking: Multi-period time entry with automatic break calculations
- βοΈ German Labor Law Compliance: Automated compliance checking for working hours and breaks
- π Comprehensive Reporting: PDF report generation with LaTeX and ReportLab support
- π Multi-Language Support: English and German interface localization
- π¨ Modern UI: Professional interface with light/dark theme support
- πΎ Robust Database: SQLite-based data storage with backup capabilities
- π Analytics Dashboard: Employee statistics and performance metrics





- Multi-language Support: Complete German and English localization
- Professional Layout: Clean, structured format suitable for official documentation
- Comprehensive Data: Company info, employee details, work hours, vacation/sick days
- Detailed Time Records: Day-by-day breakdown with start/end times and break tracking
- Summary Statistics: Monthly totals for working hours, vacation, and sick leave
- Compliance Ready: Format suitable for German labor law documentation requirements

- Python 3.7 or higher
- Operating System: Windows 10+, macOS 10.14+, or Linux Ubuntu 18.04+
-
Clone the Repository
git clone https://github.com/LizardKing00/ChronoStaff.git cd ChronoStaff -
Create Virtual Environment (Recommended)
python -m venv chrono_env # Windows chrono_env\Scripts\activate # macOS/Linux source chrono_env/bin/activate
-
Install Core Dependencies
pip install -r requirements.txt
-
Install Optional Components
# For enhanced theming support pip install ttkthemes # For advanced PDF generation pip install reportlab # For LaTeX-based PDF templates (requires LaTeX installation) # Ubuntu/Debian: sudo apt update && sudo apt install texlive-latex-base texlive-latex-extra # macOS (with Homebrew): brew install --cask mactex # Windows: Download and install MiKTeX from https://miktex.org/
-
Launch Application
python gui_management.py
- Download the latest release from Releases
- Extract the archive
- Run
chrono-staff.exe(Windows) or./chrono-staff(Linux/macOS)
- CPU: Dual-core 1.5 GHz processor
- RAM: 2 GB RAM
- Storage: 100 MB available space
- Display: 1024x768 resolution
- CPU: Quad-core 2.0 GHz processor
- RAM: 4 GB RAM
- Storage: 500 MB available space
- Display: 1920x1080 resolution or higher
| Component | Required | Purpose | Installation |
|---|---|---|---|
| Python 3.7+ | β Yes | Core runtime | python.org |
| tkinter | β Yes | GUI framework | Included with Python |
| sqlite3 | β Yes | Database | Included with Python |
| ttkthemes | Enhanced themes | pip install ttkthemes |
|
| reportlab | PDF generation | pip install reportlab |
|
| LaTeX | Advanced PDF templates | Platform-specific installation |
-
Launch the Application
python gui_management.py
-
Configure Company Information
- Navigate to Settings tab
- Update company details under "Company Information"
- Set brand colors and contact information
- Click "Save Settings"
-
Add Your First Employee
- Go to Employees tab
- Click "Add Employee"
- Fill in required information:
- Name (required)
- Employee ID (4-digit format, e.g., 0001)
- Position, hourly rate, email
- Working hours per week and vacation days
- Click "Save"
-
Record Time Entries
- Switch to Time Tracking tab
- Select the employee from dropdown
- Choose the date (or use "Today" button)
- Enter work periods (start/end times)
- The system automatically calculates breaks and compliance
- Click "Add Entry"
-
Generate Your First Report
- Navigate to Reports tab
- Select employee and time period
- Click "Generate Preview" to see report content
- Click "Export PDF" to create a professional PDF report
- Add/Edit/Delete: Full CRUD operations for employee records
- Status Management: Activate/deactivate employees without losing data
- Detailed Profiles: Comprehensive employee information with statistics
- Bulk Operations: Import/export employee data (CSV support)
- Multi-Period Entry: Up to 3 work periods per day
- Automatic Calculations: Break time, overtime, and total hours
- Compliance Monitoring: German labor law validation
- Record Types: Work, vacation, sick leave, and holidays
- Calendar Integration: Visual date selection and navigation
- PDF Generation: Professional reports with company branding
- Template Options:
- Default (ReportLab): Modern, fast generation
- LaTeX Black & White: Professional academic-style reports
- LaTeX Color: Colorful, branded corporate reports
- Multi-Language: English and German report templates
- Customizable Output: Configurable paths and naming conventions
- Theme Support: Light and dark themes with ttkthemes integration
- Company Branding: Logo, colors, and contact information
- Default Values: Working hours, vacation days, and overtime thresholds
- Database Management: Backup, restore, and migration tools
# Launch with specific database
python gui_management.py --database=/path/to/custom.db
# Launch with debug mode
python gui_management.py --debug
# Launch with specific theme
python gui_management.py --theme=dark-- Core tables
employees (id, name, employee_id, position, hourly_rate, ...)
time_records (id, employee_id, date, start_time_1, end_time_1, ...)
settings (key, value, category)
company_data (key, value)Issue: "ttkthemes not found" warning
Solution: Install themes with pip install ttkthemes
Issue: PDF generation fails Solutions:
- For ReportLab:
pip install reportlab - For LaTeX: Install platform-specific LaTeX distribution
Issue: Database errors on startup Solution: Check file permissions in application directory
Issue: Theme not applying Solution: Restart application after installing ttkthemes
- Issues: GitHub Issues
- Discussions: GitHub Discussions
We welcome contributions! Please see our Contributing Guide for details.
git clone https://github.com/LizardKing00/ChronoStaff.git
cd ChronoStaff
python -m venv dev_env
source dev_env/bin/activate # or dev_env\Scripts\activate on Windows
pip install -r requirements-dev.txt
python -m pytest tests/- Follow PEP 8 guidelines
- Use type hints where appropriate
- Maintain test coverage above 80%
- Document all public functions
This project is licensed under the MIT License - see the LICENSE file for details.
- tkinter: Python's standard GUI toolkit
- ttkthemes: Enhanced theme support
- ReportLab: PDF generation capabilities
- LaTeX: Professional document typesetting
- German Labor Law: Compliance framework inspiration
- Test Coverage: 85%
- Supported Languages: English, German
- Platforms: Windows, macOS, Linux
- Database: SQLite (portable)
- Web-based interface
- Multi-company support
- REST API
- Mobile app companion
- Advanced analytics dashboard
- Integration with payroll systems
- Data import/export utilities
- Enhanced reporting templates
- Automated backup system
- Plugin architecture
- Improved German translations
Made with β€οΈ for efficient workforce management