- Replace the checkbox "Générer uniquement des multiplications" with radio buttons for "Multiplications uniquement" and "Multiplications ET divisions"
- Update JavaScript code to handle radio button values instead of checkbox
- Maintain backward compatibility with old localStorage format
- Ensure all functionality remains intact
- Add saveFormValues() function to store all form parameters in localStorage
- Add restoreFormValues() function to retrieve form parameters from localStorage
- Modify DOMContentLoaded event to restore form values on page load
- Add calls to saveFormValues() in both form submission handlers
- Add event listeners to save form values whenever any input changes
This enhancement improves user experience by preserving form settings between visits.
Moved gen-op.py to app/gen_op.py and integrated it with the FastAPI application
Added a new section in the UI for generating operation exercises
Updated the PDF generation to work in memory and upload to S3
Bumped version to 1.0.9
- Replace local file storage with S3-compatible object storage
- Add automatic PDF download after generation
- Include timestamps in filenames to ensure uniqueness
- Remove unused static volume from Kubernetes deployment
- Update ConfigMap to remove unused variables and add S3 configuration
- Configure S3 credentials via Kubernetes secrets for both dev and prod environments
- Add boto3 dependency for S3 integration
Changes made:
- Remove problematic configuration-snippet from base ingress
- Add namespace creation for math-tables
- Configure ingress with nginx class and letsencrypt-prod issuer
- Set production hostname to math-tables.cl1.parano.ch
- Reduce production replicas to 1
- Update copyright year in index.html
- Create FastAPI backend with endpoints for generating math exercises
- Build Bootstrap frontend with responsive UI for exercise configuration
- Implement PDF generation functionality identical to original script
- Add README with installation and usage instructions
- Update requirements.txt with web dependencies
- Configure .gitignore to exclude compiled files and generated PDFs