Track: Curriculum Integration
Overview
This feature integrates the HEMA curriculum documents (extracted as images from PDFs) into the application. It allows users to browse and read the "Passage de Grade" requirements directly within the tool, replacing the main training area when active.
Functional Requirements
- Sidebar Navigation: Add a new "Curriculum" tab or section to the settings sidebar.
- Grade & Document Selection: Users can select the Grade Level (e.g., Niveau 1.1) and specific documents from the sidebar.
- Document Visualisation: When a document is selected, the central training circle is replaced by the document viewer (displaying the extracted JPEG pages).
- Page Navigation:
- Visual Buttons: "Previous" and "Next" buttons in the UI.
- Keyboard Shortcuts: Use Left and Right arrow keys to flip pages.
- Training Interruption: Opening the curriculum view automatically pauses any active training sequence (
SequenceState.running = false).
UI Design
- Main View Replacement: The document page (JPEG) should scale to fill the primary training area (the left side of the screen) while maintaining its aspect ratio.
- Sidebar Integration: Navigation controls for grades, documents, and page numbers integrated into the right-hand settings panel.
Acceptance Criteria
Out of Scope
- Native PDF/DOCX rendering (using extracted images instead).
- Video playback for curriculum videos (only documents are integrated in this track).
- Full-screen modal overlay (using main area replacement instead).
Implementation Plan: Curriculum Integration
Phase 1: Data Structures and State
Phase 2: Sidebar UI Integration
Phase 3: Main View Replacement & Navigation
Phase 4: Dynamic Asset Loading
Track: Curriculum Integration
Overview
This feature integrates the HEMA curriculum documents (extracted as images from PDFs) into the application. It allows users to browse and read the "Passage de Grade" requirements directly within the tool, replacing the main training area when active.
Functional Requirements
SequenceState.running = false).UI Design
Acceptance Criteria
assets/Grades Escrime.Out of Scope
Implementation Plan: Curriculum Integration
Phase 1: Data Structures and State
CurriculumStateresource insrc/resources.rsto track visibility, selected grade/document, and current page.CurriculumManifestinsrc/constants.rsmapping theassets/Grades Escrimefolder structure.CurriculumStateinitialization and basic state transitions insrc/resources_test.rs.Phase 2: Sidebar UI Integration
src/ui/settings.rs.CurriculumState.is_visibleand pause training when opened.src/ui/setup_test.rsor a newsrc/ui/settings_test.rs.Phase 3: Main View Replacement & Navigation
src/ui/curriculum.rsto handle the document viewer UI logic.src/logic.rsorsrc/ui/systems.rs.src/ui/curriculum_test.rs.Phase 4: Dynamic Asset Loading
page-XX.jpghandles for a selected document intoCurriculumState.pages.