Files
TimeTracker/requirements.txt
Dries Peeters b1973ca49a feat: Add Quick Wins feature set - activity tracking, templates, and user preferences
This commit introduces several high-impact features to improve user experience
and productivity:

New Features:
- Activity Logging: Comprehensive audit trail tracking user actions across the
  system with Activity model, including IP address and user agent tracking
- Time Entry Templates: Reusable templates for frequently logged activities with
  usage tracking and quick-start functionality
- Saved Filters: Save and reuse common search/filter combinations across
  different views (projects, tasks, reports)
- User Preferences: Enhanced user settings including email notifications,
  timezone, date/time formats, week start day, and theme preferences
- Excel Export: Generate formatted Excel exports for time entries and reports
  with styling and proper formatting
- Email Notifications: Complete email system for task assignments, overdue
  invoices, comments, and weekly summaries with HTML templates
- Scheduled Tasks: Background task scheduler for periodic operations

Models Added:
- Activity: Tracks all user actions with detailed context and metadata
- TimeEntryTemplate: Stores reusable time entry configurations
- SavedFilter: Manages user-saved filter configurations

Routes Added:
- user.py: User profile and settings management
- saved_filters.py: CRUD operations for saved filters
- time_entry_templates.py: Template management endpoints

UI Enhancements:
- Bulk actions widget component
- Keyboard shortcuts help modal with advanced shortcuts
- Save filter widget component
- Email notification templates
- User profile and settings pages
- Saved filters management interface
- Time entry templates interface

Database Changes:
- Migration 022: Creates activities and time_entry_templates tables
- Adds user preference columns (notifications, timezone, date/time formats)
- Proper indexes for query optimization

Backend Updates:
- Enhanced keyboard shortcuts system (commands.js, keyboard-shortcuts-advanced.js)
- Updated projects, reports, and tasks routes with activity logging
- Safe database commit utilities integration
- Event tracking for analytics

Dependencies:
- Added openpyxl for Excel generation
- Added Flask-Mail dependencies
- Updated requirements.txt

All new features include proper error handling, activity logging integration,
and maintain existing functionality while adding new capabilities.
2025-10-23 09:05:07 +02:00

67 lines
976 B
Plaintext

# Core Flask dependencies
Flask==3.0.0
Flask-SQLAlchemy==3.1.1
Flask-Migrate==4.0.5
Flask-Login==0.6.3
Flask-SocketIO==5.3.6
# OAuth / OIDC
Authlib==1.3.1
PyJWT==2.8.0
# Database
SQLAlchemy==2.0.23
alembic==1.13.1
psycopg2-binary==2.9.9
# Web server
gunicorn==23.0.0
eventlet==0.40.3
# Security and forms
Flask-WTF==1.2.1
Flask-Limiter==3.8.0
# Utilities
python-dotenv==1.0.0
pytz==2023.3
python-dateutil==2.8.2
Werkzeug==3.0.6
requests==2.32.4
# Email
Flask-Mail==0.9.1
# Excel export
openpyxl==3.1.2
# PDF Generation
WeasyPrint==60.2
Pillow==10.4.0
reportlab==4.0.7
# Background tasks
APScheduler==3.10.4
# Internationalization
Flask-Babel==4.0.0
Babel==2.14.0
# Development and testing
pytest==7.4.3
pytest-flask==1.3.0
pytest-cov==4.1.0
coverage[toml]==7.4.0
black==24.8.0
flake8==6.1.0
# Security
cryptography==45.0.6
markdown==3.6
bleach==6.1.0
# Analytics and Monitoring
python-json-logger==2.0.7
sentry-sdk==1.40.0
prometheus-client==0.19.0
posthog==3.1.0