As a pastime project last year, I rewrote two non-trivial web applications in Halogen; some patterns eventually emerged. I believe these patterns haven't been documented thoroughly, particularly in the realm of pure-functional programming and web-application. I now architect my PureScript application in Halogen with a form of Entity-Component-System with one-main-handler loop. I organize page sub-components into Widgets, and Bricks. Widgets and Bricks play a similar role, but we can distingui...