Skip to main content
CF

Elm Beyond the Basics

4h 47m 18s
English
Paid

Explore the world of web applications with Elm, a functional programming language that enhances productivity and simplifies front-end development. Elm's intuitive nature makes it a joy to use, empowering developers to create robust web applications effortlessly.

Course Overview

In this course, "Elm Beyond the Basics," we delve deeper into Elmlang, covering advanced concepts such as:

  • Structuring Your Apps using the Elm Architecture
  • Integrating with Servers — Effects (HTTP / Websocket)
  • JSON Encoding and Decoding
  • Single Page App Navigation (Routing)
  • Interacting with JavaScript using Ports
  • And much more...

About Elm

Elm was crafted to answer the question:

"What would be a good language for building front end web apps?"

Elm, developed by Evan Czaplicki over several years, balances functionality and simplicity. Unlike many functional languages, Elm strikes a harmonious blend between Idealism and Pragmatism, making it a preferred choice for developers.

Benefits of Using Elm

Elm offers substantial advantages over JavaScript by providing:

  • Zero Runtime Exceptions
  • Simplified Debugging
  • Effortless Refactoring
  • A Helpful Type System & Compiler
  • Enhanced Productivity
  • Inherently Testable Code
  • Enforced Semantic Versioning

Elm as a Functional Programming Language

For those daunted by functional languages, Elm offers a different experience. Its community avoids overwhelming academic terminology, making Elm approachable and an ideal introduction to functional programming.

Learning Elm Beyond Work

Even if Elm isn't part of your professional toolkit, learning it is valuable. Acquiring Elm skills can enhance your understanding of functional programming, potentially inspiring you to become an advocate for its use at work.

Project: Realtime Race Leaderboard App

Apply your learned concepts by creating a real-time Race Leaderboard app to track marathon and 10K race participants. This project integrates all the advanced concepts covered in the course.

Requirements

A basic grasp of Elmlang is needed. Ideally, you have completed the free introductory course, "Elm For Beginners."

Who Should Enroll?

This course targets:

  • Web developers intrigued by functional programming and Elm.
  • Developers eager to broaden their skill set.

Git Repository

Access the companion git repository for this course at:

https://github.com/knowthen/elm-beyond-basics

About the Author: KnowThen (James Moore)

KnowThen (James Moore) thumbnail

KnowThen (knowthen.com) is the long-running teaching brand of James Moore — known for unusually clear introductory courses on functional-programming-leaning languages and frameworks that the wider course market doesn't cover well.

The CourseFlix listing carries three KnowThen courses: Elm Beyond the Basics (the functional front-end language), Elixir & Phoenix for Beginners (the BEAM-based back-end stack), and HTMX + Django — Modern Python Web Apps, Hold the JavaScript (the server-rendered alternative to SPA architectures).

Material is paid and aimed at developers exploring the alternatives to the dominant JavaScript-and-React-everywhere paradigm. For broader content, see CourseFlix's Elixir, Elm, and Django category pages.

Watch Online 32 lessons

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 32 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Introduction
All Course Lessons (32)
#Lesson TitleDurationAccess
1
Introduction Demo
06:05
2
Review
07:23
3
The Elm Architecture - Overview
05:02
4
The Elm Architecture - Example
16:56
5
Effects - Overview
03:49
6
Effects - Example (Chuck Norris Joke App)
10:52
7
JSON (Decoding JSON -> Elm)
13:09
8
Websockets (Time Streaming Example App)
08:42
9
Navigation (Single Page App Routing)
10:16
10
Ports (Firebase Waitlist App)
16:05
11
Planning The App
04:22
12
Review Starter / Boilerplate
06:55
13
Setting Up Navigation / Single Page App (SPA)
09:08
14
Setting Up Login/Authentication
11:01
15
Saving / Retrieving Login Token / JWT
05:29
16
Logging Out
02:41
17
Access Control / Locking Pages
07:21
18
Adding Runners | Http Post
11:33
19
Setting Up The Leaderboard Page | Realtime Updates With Websockets
10:37
20
Estimating Runners Location
09:48
21
Querying & Sorting Runners
03:58
22
Final Thoughts
02:00
23
Introduction
06:05
24
Review
07:47
25
The Elm Architecture - Overview
05:02
26
The Elm Architecture - Example
17:35
27
Effects - Overview
03:49
28
Effects - Example (Chuck Norris Joke App)
12:58
29
JSON (Decoding JSON -> Elm)
13:09
30
Websockets (Time Streaming Example App)
08:42
31
Navigation (Single Page App Routing)
12:54
32
Ports (Firebase Waitlist App)
16:05
Unlock unlimited learning

Get instant access to all 31 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Frequently asked questions

What is Elm Beyond the Basics about?
Explore the world of web applications with Elm, a functional programming language that enhances productivity and simplifies front-end development. Elm's intuitive nature makes it a joy to use, empowering developers to create robust web…
Who teaches this course?
It is taught by KnowThen (James Moore). You can find more courses by this instructor on the corresponding source page.
How long is the course?
It contains 32 lessons with a total runtime of 4 hours 47 minutes. Every lesson is available to watch online at your own pace.
Is it free to watch?
It is part of CourseFlix's premium catalog. A subscription unlocks the full video player; the course description, table of contents, and preview information are available to everyone.
Where can I watch it online?
The course is available to watch online on CourseFlix at https://courseflix.net/course/elm-beyond-the-basics. The page hosts every lesson with the integrated video player; no download is required.