~/talk

Designing Flexible Open source Components in Halogen

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

Library claim: extract interaction and state but let consumers own the HTML. Implementation uses purescript-halogen-select with three helper props (e.g. setItemProps, setInputProps) so parent render functions keep full control. Runtime uses the Store comonad to pass state-to-HTML safely and an emit/raise round‑trip to evaluate embedded parent queries. Examples include dropdowns, typeaheads and a calendar used in production; behavior and accessibility are handled by the library, rendering and extra queries stay with the integrator.

AI-written summary · about

  1. 0:00Intro
  2. 2:18Reusability
  3. 3:49Code Between Components
  4. 6:43Common Strategies
  5. 8:21CSS
  6. 10:20Renderless Components
  7. 12:22PureScript Halogen Select
  8. 15:51Halogen
  9. 16:51Component
  10. 17:55Behaviors
  11. 19:25Inputs
  12. 21:00Query
  13. 21:54Type Add
  14. 26:07RenderList
  15. 28:24SetProps
  16. 31:29Handling output messages
  17. 32:58Embedding behaviors
  18. 33:24Conclusion
  19. 34:10Under the hood
  20. 35:53Store
  21. 36:21Query Type
  22. 38:16State Store
  23. 39:32Extract
  24. 41:29Evaluation
  25. 44:04GetState
  26. 45:04Resources
  27. 46:36Wrapup
~/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.