# QR Code Management System - Python Dependencies
# Production-ready Flask application with MySQL support

# Core Flask Framework
Flask
Flask-SQLAlchemy

# Database Support - MySQL
PyMySQL                  # Pure Python MySQL client
mysql-connector-python   # Official MySQL connector (alternative)
SQLAlchemy

# Security and Authentication
Werkzeug                 # Security utilities and password hashing

# QR Code Generation
qrcode                   # QR code generation library
Pillow                  # Image processing for QR codes

# User Agent Detection
user-agents              # Device and browser detection from user agent strings

# URL and Regex Processing
regex                 # Enhanced regex support for URL generation

# Environment and Configuration
python-dotenv            # Environment variable management

# Date and Time Processing
python-dateutil          # Extended date/time processing

# Development and Testing (optional)
pytest                   # Testing framework
pytest-flask             # Flask testing utilities
Flask-Testing            # Additional Flask testing tools

# Production Server (optional)
gunicorn                # WSGI HTTP Server for production
gevent                  # Async worker support

# Utilities
click                    # Command line interface creation
itsdangerous            # Secure data serialization
Jinja2                   # Template engine
MarkupSafe               # Safe string handling

# Data Export and Processing
openpyxl                 # Excel file generation for attendance reports
pandas                   # Data manipulation for reports (optional)

# HTTP Requests (for potential integrations)
requests                # HTTP library for external API calls

# Caching (optional for performance)
Flask-Caching            # Caching support for Flask

# Logging and Monitoring (optional)
python-json-logger       # Structured logging support

# Cryptography dependencies (required for some MySQL features)
cryptography            # Required for MySQL SSL connections

# Employee Synchronization Dependencies
schedule              # For automated scheduling