Files
calctext/_bmad-output/implementation-artifacts/8-1-iced-two-column-editor.md
2026-03-16 19:54:53 -04:00

42 lines
1.5 KiB
Markdown

---
epic: 8
story: 8.1
title: "iced Two-Column Editor"
status: draft
---
## Epic 8 — Windows App (Rust + iced)
**Goal:** Fast, lightweight native Windows app -- single .exe, no runtime dependencies.
### Story 8.1: iced Two-Column Editor
As a **Windows user**,
I want a two-column editor with input on the left and results on the right, rendered with GPU acceleration,
So that I get a fast, smooth editing experience even with large documents.
**Acceptance Criteria:**
**Given** the app is launched on Windows
**When** the main window appears
**Then** it displays a two-column layout: a custom `TextEditor` widget on the left for input and aligned `Text` widgets on the right for answers
**Given** the user types a calculation on line N
**When** the engine evaluates the line
**Then** the result appears aligned on line N in the answer column
**Given** the system has a GPU with wgpu support
**When** the app renders
**Then** it uses GPU-accelerated rendering via wgpu for smooth text and UI rendering
**Given** the system does not have compatible GPU support (e.g., older hardware, VM, RDP session)
**When** the app starts
**Then** it falls back to software rendering via tiny-skia without crashing or user intervention
**Given** a document with 1000+ lines
**When** the user scrolls and edits
**Then** the app maintains 60 fps with no perceptible lag
**Given** the user resizes the window
**When** the layout recalculates
**Then** the two columns adjust proportionally and text reflows appropriately