~/talk

Design at scale with Web Components (and ducks)

links:none on file
slides:none on file

A concrete recipe for shipping a design system: build a reusable quack-input Web Component with lit-element, Shadow DOM, slots and a React/Vue/Angular wrapper; add ElementInternals formAssociated + AOM to make it submit and expose aria-labelledby; implement design tokens with CSS Custom Properties, switchable dark mode via prefers-color-scheme, and register tokens with Registered Properties to validate values and improve performance and bundle size. Examples and code for multiple frameworks are published and shown working in Chrome/Edge (AOM partly in Safari).

AI-written summary · about

  1. 0:00Intro
  2. 0:48Material Design, a History
  3. 1:28Material Design, a Problem
  4. 1:45Web Components FTW
  5. 4:49Shadow DOM
  6. 6:36static get properties()
  7. 7:41render() return html
  8. 11:03Lion Web Components by ING
  9. 11:50class MyElement extends HTMLElement constructor()
  10. 12:57static get formAssociated() { return true; }
  11. 17:51CSS Custom Properties
  12. 20:30Emedia (prefers-color-scheme: dark)
  13. 22:00Component selector comment-input', template
  14. 22:52Spectrum Web Components by Adobe
  15. 23:23Problems, problems
  16. 25:03Bread Design global styles
  17. 25:15@property ---amber700 syntax: ''; inherits: false
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.