Essential session storage is required to sign in. Optional analytics remain off unless you allow them.
Build an interactive React app (a filterable list, a small cart, or a multi-step form): components composed from small pieces, state held at the right level with a single source of truth, derived values computed during render (not stored), lists keyed by stable ids, and immutable state updates. No class components.
Composed from small, focused components; props flow down, events up; sensible composition over config.
Single source of truth; derived values computed in render (not stored); immutable updates; stable list keys.
Events handled idiomatically; updater functions used where updates depend on previous state.
No index-as-key bugs; no derived-state drift; no direct state mutation.
Use this README structure to make the work reviewable.
DevPath fetches a read-only, size-capped snapshot. Submitted code is never executed.
# Interactive app with derived state and clean components ## Goal Build an interactive React app (a filterable list, a small cart, or a multi-step form): components composed from small pieces, state held at the right level with a single source of truth, derived values computed during render (not stored), lists keyed by stable ids, and immutable state updates. No class components. ## Acceptance criteria - [ ] Component design: Composed from small, focused components; props flow down, events up; sensible composition over config. - [ ] State modeling: Single source of truth; derived values computed in render (not stored); immutable updates; stable list keys. - [ ] Interactivity: Events handled idiomatically; updater functions used where updates depend on previous state. - [ ] Correctness: No index-as-key bugs; no derived-state drift; no direct state mutation. ## Verification - [ ] Document installation and run commands. - [ ] Record automated checks and their exact commands. - [ ] Add representative output, screenshots, or a short demo where useful. - [ ] Confirm failure paths and known constraints. ## Decision log ### Decision title - Context: - Choice: - Alternatives considered: - Tradeoffs: ## Evidence - Link each rubric criterion to the file, test, or artifact that demonstrates it. ## Known limitations - List what is intentionally out of scope and what should be improved next.