Web interface engineering
Build browser interfaces with accessibility, localization, and performance in mind.
Make interfaces readable, usable, and maintainable.
Chapters
Build an operable interface from document structure
Connect HTML semantics, CSS box layout, and keyboard feedback in a document catalog, distinguishing a synthetic control audit from actual browser and accessibility testing.
Why JavaScript shows a loading state before a result
Explain synchronous execution, microtasks, and await through document search, then protect loading states and current results with explicit request identity and controlled completion-order tests.
Use types and components to maintain an interface
Connect runtime data validation, discriminated states, and component ownership, then distinguish TypeScript checks from React and Vue update and identity mechanisms.
Decide where pages, routes, and state belong
Assign URL, local, and remote state by lifetime, then design reading-list routing, feature boundaries, and recoverable polling or streaming updates with scoped versions.
Prepare graphics, motion, and assets for a product
Choose raster, SVG, or Canvas from visual and interaction requirements, then design teaching-card assets with pixel budgets, provenance, reduced motion, and failure alternatives.
Balance localization, SEO, and loading behavior
Build complete localized lessons with independent URLs and reciprocal declarations, then distinguish LCP, INP, and CLS checks from language-mapping tests and field measurements.