Surfing With Clojure
summary
DeepSwell uses Clojure and ClojureScript for fetch scripts, server (http-kit + GraphQL) and UI, plus a Python classifier that crops/grayscales buoy-tagged frames to match forecast images to real surf videos pulled from NOAA buoys, Magicseaweed and local cams. It stores videos in a DB, returns closest clips for 24/48h forecasts, and runs as a PWA and Chrome extension. State uses a Reagent atom with a core.async event loop; sharing works via pushState query URLs.
AI-written summary · about
chapters (13)
- 0:00Introduction and motivation
- 1:12Deep Swell demo
- 5:34Architecture overview
- 6:37Fetch scripts in Clojure
- 7:39Machine learning logic
- 8:23Server and GraphQL
- 10:48Progressive Web Apps
- 11:52Browser extensions
- 13:59State management in Deep Swell
- 17:05Threading models comparison
- 19:51Query parameters and data categories
- 23:26Sharing application state
- 24:07Closing remarks and Q&A
related talks
58mA Bird's Eye View of ClojureScript
13mSurfer - recent and upcoming development
38mClimate Data, Scientific Data Visualization and Clojure
35mApplying the paradigms of core.async in ClojureScript
40mFunctional Client-Side ClojureScript UI Programming with Webfui
41mWeb Programming with Hoplon
34mBuilding a Collaborative Web App with ClojureScript
29mAn adequate intro to ClojureScript
