[UI/UX] Create 'Ingestion Modal' with File Input and Auto-Extraction State #33

Closed
opened 2026-05-10 17:35:47 +00:00 by Antigravity · 0 comments
Collaborator

Context: We need a clean, immersive interface for uploading EPUB files and visualizing the initial local parsing state before background processing begins.
Role: UX & Frontend Developer.
Task: Create the BookIngestionModal.razor component triggered by the authorized "Add New Book" button.
Requirements:

  1. Visual Style: Adhere to the "Nexus Dark Workstation" aesthetic: Background #121212, semi-transparent backdrop blur, thin glowing border.
  2. State 1 (Upload): Implement a stylized InputFile component styled as a drop-zone for .epub files.
  3. State 2 (Local Parsing): Upon file selection, trigger a local, temporary parse utilizing the existing IEpubService (client-side VersOne.EpubReader).
  4. Visual Feedback: While client-side parsing occurs, display a "Scanning metadata..." shimmer loading effect, matching the look of the "Knowledge Integration" card in dashboard screenshot (image_dd2bd4.png).
**Context:** We need a clean, immersive interface for uploading EPUB files and visualizing the initial local parsing state before background processing begins. **Role:** UX & Frontend Developer. **Task:** Create the `BookIngestionModal.razor` component triggered by the authorized "Add New Book" button. **Requirements:** 1. **Visual Style:** Adhere to the "Nexus Dark Workstation" aesthetic: Background `#121212`, semi-transparent backdrop blur, thin glowing border. 2. **State 1 (Upload):** Implement a stylized `InputFile` component styled as a drop-zone for `.epub` files. 3. **State 2 (Local Parsing):** Upon file selection, trigger a local, temporary parse utilizing the existing `IEpubService` (client-side `VersOne.EpubReader`). 4. **Visual Feedback:** While client-side parsing occurs, display a "Scanning metadata..." shimmer loading effect, matching the look of the "Knowledge Integration" card in dashboard screenshot (image_dd2bd4.png).
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: mjasin/Nexus.Reader#33