learnelm.dev — A sane place to start learning Elm

There’s a lot of good Elm material out there, but sadly no obvious order to read it in. So here’s a curated and opinionated order, with a quick note on why each thing made the cut. For the actual pitch for the language itself, go to the official site.

Why Elm?

As the box says, Elm is:

A delightful language for reliable web applications.

Adding to that, I’d argue that learning Elm is the best and most efficient way to learn and properly grasp real functional programming.

Start here

Where to start depends on what you already know. Pick the line that sounds like you.

I can also heartily recommend Beginning Elm if the above feels overwhelming. This is a slower, more hand-holding free book. Pick this one if the official guide moves too fast for you.

Core concepts

Going deeper

Essays worth your time

Scaling up

Frameworks built on (or around) Elm. Reach for one of these when you’ve outgrown a single-page app.

Where to ask

Elm has a small, passionate and genuinely patient community. Beginner questions are fine.

Want the whole pile? This page is short on purpose. Head over to awesome-elm for the full link catalogue, or elmcraft.org for community lore, curated reading, and the “why” behind a lot of the ecosystem.


Maintained by Christian Ekrem @ cekrem.github.io, who writes about Elm and a bunch of other things over there.