~/talk

The Road to Ocelot

Talkat LambdaConf 2018 · 2018-06-03..06-05· [component-design]
links:none on file
slides:none on file

Company runs PureScript and Halogen in production for about nine months and ships an open source component library called Ocelot, built from ~30,000 lines. The concrete claim is that small UI bits should be pure functions not Halogen components, using arrays of iProps and children instead of big config records. The implementation shows custom props (example pullElevate) with careful monomorphic unsafeCoerce to keep typesafe and the pattern evolves away from the Halogen DSL toward ergonomic, composable element functions.

AI-written summary · about

  1. 0:00Introduction
  2. 1:37Journey with Halogen and PureScript
  3. 3:07PureScript for production
  4. 4:39Component design challenges
  5. 8:38Halogen vs React components
  6. 10:10Pure functions for components
  7. 12:17Components vs functions
  8. 17:04Button component design
  9. 21:11Config records problems
  10. 23:24Simpler button function
  11. 27:00Breaking buttons apart
  12. 28:28Custom props for config
  13. 34:03Final button refinement
  14. 45:17Q&A
  15. 51:03Ocelot library summary
~/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.