Start Using Elm to Build Web Applications

30 minutes

Elm is a beginner friendly functional reactive programming language for building web applications. It contains a small but powerful set of language constructs, such as, static types, algebraic data types, immutability, and pure functions. Elm provides and requires the use of a specific architecture that’s well suited for sensible application construction. Elm’s type system and architecture may feel constraining at first, but they ultimately provide the programmer with some neat benefits including comprehensible code, and a much improved refactoring experience.

In this course you will learn the basic fundamentals of Elm so that you can start building applications today.

pro-course-rss-logo

PRO RSS Feed

Output text in a browser using the text function in Elm

Install the Elm Platform command-line tools

Write functions and Type Signatures in Elm

Store key-value pairs using Records in Elm

Sequencing Data With Lists in Elm

Render HTML in the browser using the Html module in Elm

Reuse Functions Through Type Variables in Elm

Create Apps Using the Elm Application Architecture

Discover New Packages Using the Elm Package Index

elm tutorial about Output text in a browser using the text function in Elm

Output text in a browser using the text function in Elm

2:23 elm

This lesson shows a super simple, yet pleasant, look at the smallest Elm example. We will use the text function from the Html module to display text in a browser.

elm tutorial about Install the Elm Platform command-line tools

Install the Elm Platform command-line tools

0:36 elm

Getting Elm installed. We will install the Elm CLI with npm. This gives us access to elm-repl and elm-reactor. The repl lets us play with expressions at the command-line, and reactor starts a development server which builds Elm files on-demand.

elm tutorial about Write functions and Type Signatures in Elm

Write functions and Type Signatures in Elm

6:04 elm

Functions are one of the core building blocks of Elm. In this lesson we learn how to define, call, pass parameters, receive parameters, partially apply functions, compose functions, and add correct type signatures. In this lesson we will show how to define functions with type signatures.

elm tutorial about Store key-value pairs using Records in Elm

Store key-value pairs using Records in Elm

3:06 elm

A record is a set of key-value pairs, similar to objects in Javascript. Record fields can be accessed through dot-notation, or special access functions. Records are fully type-checked and can be described by type aliases.

elm tutorial about Sequencing Data With Lists in Elm

Sequencing Data With Lists in Elm

5:57 elm

Lists are used in Elm to represent sequences of data. The List library comes with a toolbox of useful functions. Here we cover list transformation (map), and getting single values from lists (fold).

elm tutorial about Render HTML in the browser using the Html module in Elm

Render HTML in the browser using the Html module in Elm

3:14 elm

Elm provides a declarative way to produce DOM elements and react to DOM events, similar to HTML. Learn how to get Web content on the screen by writing functions that take in data and return Elm’s version of HTML.

elm tutorial about Reuse Functions Through Type Variables in Elm

Reuse Functions Through Type Variables in Elm

1:43 elm

Sometimes a function is useful for many different types. Instead of writing a copy of that function for each different type, learn to use type variables and allow the same function to be reused.

elm tutorial about Create Apps Using the Elm Application Architecture

Create Apps Using the Elm Application Architecture

4:43 elm

Elm is designed specifically for building applications, and it is built around a scalable and sensible application architecture. Learn the very basics of this architecture through updating application state by reacting to DOM events.

elm tutorial about Discover New Packages Using the Elm Package Index

Discover New Packages Using the Elm Package Index

2:53 elm

Elm comes with an index of publicly-usable open-source packages. Using packages from this index can substantially improve a developer’s experience. Learn how to find a package through the index, understand its API through type annotations and documentation, download it, and use it in a project.

Presented by:

Murphy Randle

I make software that helps people be happy.

HEY, QUICK QUESTION!
Joel's Head
Why are we asking?