Fullstack Gleam: Static Types on the BEAM, and Javascript You'll Love
summary
Gleam is a statically typed language that compiles to Erlang and JavaScript and here it builds a full-stack blog: front-end UI with luster (Elm-style model/update/view, server components like LiveView) and dev tooling from luster-devtools, backend HTTP routing with wisp, and database access via squirrel which reads SQL files, queries Postgres, and generates typed functions and decoders like get_post_by_uuid. Shared Gleam types run on both client and server, FFI MJS bridges JS with manual type annotations, and the main gotchas are wrong FFI types and pulling Elixir libs increasing bundle size.
AI-written summary · about
chapters (9)
- 0:00Introduction and welcome
- 1:50Introduction to Gleam
- 3:25Gleam basics and interoperability
- 5:51Building frontends with Lustre
- 7:38Building backends with Wisp
- 8:50Database management with Squirrel
- 10:38Full-stack architecture example
- 13:41In-depth code walkthrough
- 16:52Q&A and concluding thoughts
related talks
23mBEAM's bright future with Gleam (and JavaScript?)
36mBringing Gleam to Obsidian: A Minimal Plugin Journey
47mElm or how I learned to love front end development
47mImport-Substituting Svelte, or How I Made Glimmer 40% Faster
39mDeveloper Happiness on the Front End with Elm
33mSecrets of the Glimmer VM
45mEmscripten
15mPutting the fun in functional with Elm
