Quote Weave
A typewriter-driven quote reader with a Voronoi thematic atlas, Canvas-rendered share cards, and reduced-motion and screen-reader support.

Info
About this project
I built Quote Weave as a reading experience for 168 quotes across categories. Quotes type out character by character; you can save favorites locally, pull up a Wikipedia panel on the author, or generate a Canvas-rendered card you can share straight from the reader. The Idea Map runs a build-time embedding pipeline to place every quote into a Voronoi atlas of five themes, so quotes that sit close together actually share ideas. It adapts to prefers-reduced-motion, exposes proper dialog and aria-live semantics for screen readers, and stays stable through rapid navigation.
- Signal-native architecture: 8 standalone OnPush child components and 7 component-scoped services, zero manual change detection
- Race protection against rapid navigation: Wikipedia panels and share-card renders cancel in-flight work before starting the next
- Reduced-motion support: the typewriter renders instantly and particles are disabled at the OS level
- WCAG-conformant dialog semantics on every modal panel (role, aria-modal, aria-labelledby, sr-only live regions)
- Pause/resume split by intent: scroll-pause distinct from panel-pause so closing a modal can't override a reader's scroll position
- Canvas-rendered shareable quote cards with category-aware palette and Web Share API integration
- Wikipedia author panels with disambiguation, image-domain validation, URL injection guards, and skeleton loading


