Essential session storage is required to sign in. Optional analytics remain off unless you allow them.
Build a small SwiftUI app screen (a todo list, a counter with history, a simple form) that demonstrates correct DECLARATIVE UI and state flow. Requirements: compose the UI from small View structs using VStack/HStack/ZStack and modifiers (be deliberate about modifier ORDER); render a collection with List/ForEach over identifiable data; manage state with the RIGHT property wrappers — @State for a view's own private state, @Binding to pass two-way state to a child (with $), and @Observable (or ObservableObject) for a shared model — keeping a single source of truth; and add at least one animation using withAnimation or .animation. Explain why SwiftUI re-renders when your state changes.
Composed View structs + stacks + modifiers (order-aware); List/ForEach over identifiable data; idiomatic declarative style.
@State/@Binding/@Observable used for the right roles; single source of truth; understands re-render-on-state-change.
At least one tasteful animation; clean, working screen.
Use this README structure to make the work reviewable.
DevPath fetches a read-only, size-capped snapshot. Submitted code is never executed.
# A stateful SwiftUI screen ## Goal Build a small SwiftUI app screen (a todo list, a counter with history, a simple form) that demonstrates correct DECLARATIVE UI and state flow. Requirements: compose the UI from small View structs using VStack/HStack/ZStack and modifiers (be deliberate about modifier ORDER); render a collection with List/ForEach over identifiable data; manage state with the RIGHT property wrappers — @State for a view's own private state, @Binding to pass two-way state to a child (with $), and @Observable (or ObservableObject) for a shared model — keeping a single source of truth; and add at least one animation using withAnimation or .animation. Explain why SwiftUI re-renders when your state changes. ## Acceptance criteria - [ ] Declarative SwiftUI: Composed View structs + stacks + modifiers (order-aware); List/ForEach over identifiable data; idiomatic declarative style. - [ ] State flow: @State/@Binding/@Observable used for the right roles; single source of truth; understands re-render-on-state-change. - [ ] Polish: At least one tasteful animation; clean, working screen. ## 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.