- Replace base64 logo with static file reference to avoid ERR_INVALID_URL
- Add missing status element to index.html to fix TypeError in XMLHttpRequest
- Reduce MAX_CONTENT_LENGTH from 1000TB to 100GB for practicality
- Update all templates to use logo_url instead of logo_b64
- Update Waitress max_request_body_size to match Flask limit
- Embed logo as base64 data URL in templates to avoid static file issues
- Fix Flask route endpoint for /jobs (change function name to 'jobs')
- Change upload and session directories to relative paths for better portability
- Ensure directories are created at app startup
- Add PDF_SUPPORT checks before using PyMuPDF functions
- Handle missing PyMuPDF gracefully in PDF processing functions
- Fix url_for('jobs') to url_for('jobs_page') in templates
- Prevent AttributeError when fitz is None
- Full-featured web application for PDF processing
- Microsoft Entra (Azure AD) authentication with PKCE
- Parallel PDF sorting and merging capabilities
- Job management system with real-time progress tracking
- Modern web UI with responsive design
- Comprehensive error handling and logging
- Ubuntu installation script for easy deployment
- Environment configuration for secure credential management