v1.1.0 — Visual Redesign & Theme Tokenization
Visual redesign and theme tokenization pass.
Highlights
- Theme tokenization — 80+ hardcoded hex colors and font strings centralized into
app/src/theme/index.ts. New tokens forfontSize.micro/xxsandcolors.primaryDark/accentBg/codeBlock/highlight/tooltipLight. Shared style constants (headingStyle,subheadingStyle,codeBlockStyle, etc.) and a centralizedLIB_ABBREVmap. - WCAG AA — fixed 15+ contrast violations (
gray.400was 2.9:1); all text now meets 4.5:1. Keyboard-accessible zoom container with focus-visible. - Plot of the Day redesign — terminal-style frame with
$ python plots/...prompt linking to GitHub source, split layout, fade-in animation, real library + Python versions, status bar. - Responsive — mobile breadcrumb abbreviations (
pyplots.ai→pp,matplotlib→mpl), smoother RelatedSpecs grid progression (2 → 3 → 4 → 6). - Code quality — fixed pre-existing lint errors (setState in useEffect → render-time ref), AbortController fetch cleanup on unmount, full style-guide doc.
Full Changelog: v1.0.0...v1.1.0