v0.20.0 — April 2026 design handoff
Bundles two unpublished versions (0.19.4 + 0.20.0) from the April 2026 design handoff adoption. 0.19.4 was never published to npm; 0.20.0 supersedes it.
0.20.0 — Three new components (PR #294)
Built natively to the V.37 pattern (React Aria + Tailwind + CSS for phosphor). Purely additive — no existing component source was touched.
<InlineLink>— in-flow navigational anchor. Dotted amber underline, phosphor-invert hover,▸(internal) or↗(external) glyph.hrefis sanitized againstjavascript:/data:/unknown-scheme URLs. External variant adds saferel="noopener noreferrer"+target="_blank"; consumer-suppliedtarget="_blank"withoutexternalalso auto-applies safe rel (tabnabbing guard). Callerreltokens are union-merged with safety tokens sorel=\"author\"+target=\"_blank\"still getsnoopener noreferrer. Closes rizomorf parity gap #3.<DosFigure>— demoscene-style painted-screen placeholder for media (Sierra/LucasArts title-card aesthetic). 4:3 amber chrome, 6s scanline sweep (container-query based), phosphor flicker, annotation pins at{x, y}percentages with NaN-safe clamping, resolution tag. Compositor-only animations that honorprefers-reduced-motion/prefers-contrast. Closes rizomorf parity gap #2.<CmdPalette>— ⌘K / Ctrl+K command-palette overlay built on React AriaModalOverlay+Modal+Dialog. Genericitemswithkeywords, scored search, arrow-key navigation, optionalrenderItem, configurable hotkey (\"mod+k\"default,falseto disable). Hotkey listener uses ref-based indirection so inlineonOpenChangehandlers don't rebind on every render. Per-instance DOM ids viauseId().
Component count: 33 → 36.
0.19.4 — Token adoption (PR #291, merged into 0.20.0)
--color-semantic-text-muted(+text-dos-text-mutedTailwind class) with per-theme hexes:amber-mono→{color.cga.lightGray}(#B87C1A)cga-amber→{color.cga.brown}(#AA5500)cga-mode4-p0→rgba(255, 255, 0, 0.65)cga-mode4-p1+cga-mode5→rgba(255, 252, 247, 0.65)- default →
{color.cga.amberDim}(#9A5700)
Dedicated hex per theme, not an opacity trick.
eidotter/utilitiessubpath export — opt-in CSS file with 12.dos-*classes for raw HTML / MDX / prose:.dos-page,.dos-hero,.dos-h1–.dos-h5,.dos-body,.dos-body-lg,.dos-caption,.dos-micro,.dos-label,.dos-code,.dos-scanlines. Not bundled into the defaulteidotter/styles— component-only consumers pay zero bytes.- Muted-text refs migrated from
--color-cga-brownto--color-semantic-text-mutedacross Progress, Chat/ChatMessage, InlineExpand, Footer, Chat/ChatHistory, Input (PR #295).
Install
```bash
npm install eidotter@0.20.0
```
Consumer imports
```tsx
import 'eidotter/styles'; // required — all styles, fonts, tokens, Tailwind utilities
import 'eidotter/themes/amber-mono.css'; // optional theme
import 'eidotter/utilities'; // optional — .dos-* classes for raw HTML/MDX/prose (new in 0.19.4)
```
Links
- PRs: #291 (tokens), #295 (muted migration), #294 (components)
- Storybook: https://storybook.eidotter.com
- CHANGELOG: https://github.com/CinimoDY/eiDotter/blob/main/CHANGELOG.md