Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
awesome-elm
A curated list of useful Elm tutorials, libraries and software. Inspired by awesome list. Feel free to contribute. :rocket:
https://github.com/sporto/awesome-elm
Last synced: 5 days ago
JSON representation
-
Learn
-
- Official tutorial - depth guide with examples.
- Exercism Elm Track - Collection of Elm exercises.
- Beginning Elm - A gentle introduction to the Elm programming language.
- Programming Elm - Thorough book from The Pragmatic Programmers that covers basics and advanced concepts.
- Elm: A Beginners' Guide to Elm and Data - Beginners' course to Elm and Data
- Practical Elm for a Busy Developer - A non-beginner book about the practical aspects of developing Elm applications.
- A nice app on Elm street - An introduction to Elm
- Elm Cookbook - A digital book about Elm.
- Official tutorial - depth guide with examples.
- Exercism Elm Track - Collection of Elm exercises.
- Beginning Elm - A gentle introduction to the Elm programming language.
- Programming Elm - Thorough book from The Pragmatic Programmers that covers basics and advanced concepts.
- Elm: A Beginners' Guide to Elm and Data - Beginners' course to Elm and Data
- Practical Elm for a Busy Developer - A non-beginner book about the practical aspects of developing Elm applications.
- A nice app on Elm street - An introduction to Elm
- The Elmish Book
- Awesome Elm PLTD - Useful resources for programming language theory & development in Elm.
-
Outdated Tutorials and books (Elm 0.18 or earlier)
- Writing native - Learn how to create native JavaScript modules for Elm.
- Elm For Beginners - Video Course - Build your first Elm Web App.
- Elm FAQ - Elm FAQ from [Elm Community](http://elm-community.org/).
- Writing native - Learn how to create native JavaScript modules for Elm.
- Elm For Beginners - Video Course - Build your first Elm Web App.
- Elm FAQ - Elm FAQ from [Elm Community](http://elm-community.org/).
-
-
Learning Guides
-
- Elm in Action - depth book for Elm beginners, from Manning Publications.
- Learn you an Elm - Elm tutorial with exhaustive examples and descriptions.
- Elm patterns - A collection of common patterns in Elm.
- Ninety-nine Problems, Solved in Elm - Adaptations for Elm from Ninety-Nine Haskell Problems.
- Elm Tutorials on Codementor - Two tutorials on building web apps with Elm.
- Elm programming language - a brief overview of Elm as a programming language.
- Codings hints - A list of README files by Evan.
- Ellies catalog - A Collection of small example in Ellie.
- Architecture Tutorial - How to create modular Elm code that scales nicely with your app.
- Elm Maybe - Dealing with null/Nothing - Working with the Maybe type, with nicely commented code examples.
-
Learning Videos
- Elm The Complete Guide - Video tutorial including Elm UI, Elm Review, responsive design, tests and more.
- Welcome to Elm - Video playlist about learning all the Elm fundamentals.
- Egghead.io: Elm videos - Egghead's Elm video training, many of which are free.
- Elm Basics - Walk through all the syntax and basic ideas in Elm as a general programming language.
-
Outdated Tutorials and books (Elm 0.18 or earlier)
- Elm: Building Reactive Web Apps - Learn how to build reactive web apps using Elm.
- Elm: Functional frontend development - Series of articles about fundamentals and advanced topics.
- Elm Tutorial - A tutorial on developing single page web applications with Elm.
- Elm Seeds - Short screencasts to teach you the Elm programming language from Erik Person.
- Single-Page Web Apps in Elm - Five parts tutorial on Elm.
- Elm Tutorial by Auth0 - A tutorial on building an app in Elm from authentication to calling an API.
- Elm For Beginners - Video Course - Build your first Elm Web App.
-
-
Articles
-
Outdated Tutorials and books (Elm 0.18 or earlier)
-
Why Elm?
- Side-effects of Elm in production - An experience report from Bellroy
- How Elm Made Our Work Better - How a team built a business-critical web app for a customer using Elm.
- FP with games in Elm - Switching from imperative to functional programming with games in Elm.
- Blazing Fast HTML - Virtual DOM in Elm.
- Elm from a Business Perspective - This article discusses topics about Elm from a business perspective
- Move fast and don’t break things. Running a startup on Elm - Some thoughts on Elm development by a Swedish startup.
- Blazing Fast HTML - Virtual DOM in Elm.
- Side-effects of Elm in production - An experience report from Bellroy
- How Elm Made Our Work Better - How a team built a business-critical web app for a customer using Elm.
- Elm from a Business Perspective - This article discusses topics about Elm from a business perspective
-
Miscellaneous articles
- Learning FP the hard way - Experiences on the Elm language.
- Blog of Brian Hicks - A blog with various topics about Elm.
- Introduction to The Elm Architecture and How to Build our First Application - An article describing the Elm architecture and how to build a simple application
- Functional Programming for Web Frontend by Jan Luxemburk - A Bachelor’s thesis about functional programming for frontend development with the focus on Elm.
- Blog of Brian Hicks - A blog with various topics about Elm.
-
Outdated articles (Not relevant for current Elm architecture)
- Elm & Components - A blog post describing a possible approach to reducing TEA boilerplate. Useful for component libraries and anyone interested in seeing the amazing things you can do with function types.
- Composing Features and Behaviours in the Elm Architecture - An article describing how to organize code that follows the Elm architecture into independent features, how to communicate between features, and how to group some of these features together to assemble larger features.
- Getting Started with Elm - Series of Elm education tutorials.
- Elm & Guarantees - a realistic look at where Elm is and isn’t superior to other options.
- Elm & Components - A blog post describing a possible approach to reducing TEA boilerplate. Useful for component libraries and anyone interested in seeing the amazing things you can do with function types.
-
-
Podcasts
-
Individual Podcast episodes
- Functional Geekery 33 - Richard Feldman and Tessa Kelly.
- The Changelog 218 - Elm with Evan Czaplicki and Richard Feldman
- The Changelog 191 - Elm and Functional Programming with Richard Feldman.
- Software Engineering Daily - Elm with Richard Feldman and Srinivas Rao.
- The Web Platform Podcast 15 - Functional Programming with Elm, ClojureScript, Om, and React.
- The Web Platform Podcast 76 - The Elm Programming Language.
- The Web Platform Podcast 108 - Elm Revisited.
- Full Stack Radio 44 - What the heck is Elm? In this episode, Joel Clermont talks about Elm and functional programming.
- InfoQ Podcast 2017-04-27 - Richard Feldman discusses how Elm compares to React.js
- Software Engineering Daily - Elm with Richard Feldman and Srinivas Rao.
- The Web Platform Podcast 15 - Functional Programming with Elm, ClojureScript, Om, and React.
- The Web Platform Podcast 76 - The Elm Programming Language.
- The Web Platform Podcast 108 - Elm Revisited.
- Full Stack Radio 44 - What the heck is Elm? In this episode, Joel Clermont talks about Elm and functional programming.
- InfoQ Podcast 2017-04-27 - Richard Feldman discusses how Elm compares to React.js
-
Video tutorials
-
Miscellaneous videos
- Elm Town - A podcast about the people in the Elm community (Outdated).
-
-
Videos
-
Playlists
- Elm Conf 2019 - Sep 2019
- Elm Europe 2019 - Jun 2019
- Elm in the Spring 2019 - Jun 2019
- Oslo Elm Day 2019 - Feb 2019
- Elm Conf 2018 - All talks from elm-conf 2018
- Elm Europe 2018 - A playlist of all talks from Elm Europe 2018
- Elm Conf 2017 - All talks from elm-conf 2017
- Elm Europe 2017 - A playlist of all talks from Elm Europe 2017
- Oslo Elm Day 2017 - A playlist of all talks from Oslo Elm Day 2017
- Elm Conf 2016 - All talks from elm-conf 2016
- Elm Conf 2019 - Sep 2019
- Elm Europe 2019 - Jun 2019
- Elm in the Spring 2019 - Jun 2019
- Oslo Elm Day 2019 - Feb 2019
- Elm Conf 2018 - All talks from elm-conf 2018
- Elm Europe 2018 - A playlist of all talks from Elm Europe 2018
- Elm Conf 2017 - All talks from elm-conf 2017
- Elm Europe 2017 - A playlist of all talks from Elm Europe 2017
- Oslo Elm Day 2017 - A playlist of all talks from Oslo Elm Day 2017
- Elm Conf 2016 - All talks from elm-conf 2016
-
Miscellaneous videos
- Richard Feldman: Make the Back-End Team Jealous: Elm in Production | 2015 - A talk about Elm and initial steps to use it in production.
- Aaron VonderHaar: Codevember | 2016 - elm live video examples.
- Aaron VonderHaar: Codevember | 2016 - elm live video examples.
-
Video tutorials
- Greg Ziegan: Elm live coding videos - Live coding videos on youtube.
- Greg Ziegan: Elm live coding videos - Live coding videos on youtube.
-
-
Conference Videos
-
Miscellaneous videos
- Dillon Kearns: Types Without Borders | 2018 - elm-conf 2018 talk about end-to-end type-safety using external schemas like GraphQL.
- Richard Feldman: Introduction to Elm | 2016 - A talk that gives a broad, high-level introduction to Elm.
- Richard Feldman: Making impossible states impossible | 2016 - A talk about modelling data structures in Elm in a way that makes invalid states unrepresentable
- Richard Feldman: Effects as Data | 2015 - A talk about how Elm manages side effects.
- Evan Czaplicki: Let's be mainstream! User focused design in Elm | 2015 - A talk from the father of Elm about the philosophy behind the language.
- Jamison Dance: Rethinking All Practices - Building Applications in Elm | 2016 - A talk given at React.js Conf 2016 about what Elm has to teach the JavaScript world and why JS devs should consider trying it.
- Amitai Burstein: Frontend with Guarantees | 2016 - A talk from You Gotta Love Frontend 2016
- Jessica Kerr: Adventures in Elm | 2016 - A talk about the combination of functional programming with Elm at GOTO Chicago 2016.
- Richard Feldman: Make the Back-End Team Jealous: Elm in Production | 2015 - A talk about Elm and initial steps to use it in production.
-
-
News
-
Miscellaneous videos
- Official Elm News - Official Elm blog
- Elm Bits - A free weekly newsletter about Elm featuring hand-picked news, articles, books, events, tools, and libraries.
- Elm News - All Elm news in one place
- Elm Greenwood - Elm packages releases
- Elm Reddit - Elm news in Reddit
-
Video tutorials
- Elm Weekly - A weekly newsletter about Elm
- Elm Weekly - A weekly newsletter about Elm
-
-
Testing
-
Individual Podcast episodes
- Elm Program test - Test complete Elm programs
-
-
Libraries
-
Individual Podcast episodes
- Elm packages - The official registry
-
-
Other tools
-
Unmaintained
- Elm Catalog - A catalog of Elm tools.
- Dependabot - Automatic update PRs for your elm.json.
- Html to Elm - Convert HTML to Elm.
- Elm Catalog - A catalog of Elm tools.
- Dependabot - Automatic update PRs for your elm.json.
-
-
Boilerplates
-
Individual Podcast episodes
- IHP + Elm - The IHP Haskell Framework provides a built-in Elm boilerplate, useful when working with elm in the frontend and haskell in the backend
- elm-webpack-4-starter - Elm webpack 4 starter template.
-
Outdated Boilerplates
- elm-webpack-starter - A simple Webpack setup for writing Elm apps.
- elm-webpack-starter-kid - A very very basic elm + webpack 4 template.
-
-
Frameworks
-
Static site generators
-
Outdated Boilerplates
- Elm Pages - Static site generator that prerenders HTML and hydrates into an Elm client-side app ([here is a brief comparison with elmstatic](https://elm-pages.com/blog/introducing-elm-pages#comparing-elm-pages-and-elmstatic)).
- Elmstatic - Elm-based static site generator.
- Elm Pages - Static site generator that prerenders HTML and hydrates into an Elm client-side app ([here is a brief comparison with elmstatic](https://elm-pages.com/blog/introducing-elm-pages#comparing-elm-pages-and-elmstatic)).
- Elmstatic - Elm-based static site generator.
-
-
Showcase generators
-
Run Elm
-
Outdated Boilerplates
- Ellie - The Elm Live Editor
- Elm Editor - Advanced Elm Live Editor
- elm-instant - atom package to try your elm code from the editor. Provides a visual REPL and a preview pane.
- Glitch - Build fast, full-stack web apps in your browser.
- Elm Live - A flexible dev server for Elm. Live reload included!
- elm-instant - atom package to try your elm code from the editor. Provides a visual REPL and a preview pane.
- Glitch - Build fast, full-stack web apps in your browser.
- Elm Live - A flexible dev server for Elm. Live reload included!
-
-
Compile and bundle
-
Outdated Boilerplates
- Parcel - Bundle Elm using Parcel.
-
-
Editor plugins
-
Atom
- atom-linter-elm-make - Elm code linter for the Atom editor.
- atom-language-elm - Syntax highlighting and autocompletion for the Atom editor.
- elmjutsu - Autocompletion, go to definition, find usages, rename symbol, etc. for the Atom editor.
- atom-elm-navigator - A side panel that helps to navigate to any function, type definition or port in your project.
- atom-linter-elm-make - Elm code linter for the Atom editor.
- atom-language-elm - Syntax highlighting and autocompletion for the Atom editor.
- elmjutsu - Autocompletion, go to definition, find usages, rename symbol, etc. for the Atom editor.
- atom-elm-navigator - A side panel that helps to navigate to any function, type definition or port in your project.
-
Sublime Text
- Elm Syntax Highlighting - Syntax Highlighting for Elm in Sublime Text.
-
Visual Studio Code
- ElmLS - Elm Language Server integration
- Elmmet: Emmet for Elm (Visual Studio Code) - Emmetio abbreviation expander into composition of Elm function with elm-format'er inside.
- HTML to Elm for Visual Studio Code - VSCode plugin to convert HTML to Elm
-
-
Examples
-
Other editors
- Builtwithelm - Web site built with elm with list of projects and apps built with Elm.
- Elm Playground - Tiny Elm projects implemented for the sake of learning by example.
- Elm Playground - Pure SPA (with routing) exploring various aspects of Elm.
- Builtwithelm - Web site built with elm with list of projects and apps built with Elm.
- Elm Playground - Tiny Elm projects implemented for the sake of learning by example.
- JWT auth with Django + Elm - JSON Web Token (JWT) authentication using Django (backend) and Elm (frontend).
- Ari's Garden - A recipe [site](https://arisgarden.theiceshelf.com/) built as an SPA that also makes use of the Elm parser.
-
-
Community and Support
-
Conferences
-
Inspired by Elm
-
Games
- Bolero - F# in WebAssembly using Elmish
- Iced - A cross-platform GUI library for Rust, inspired by Elm
- Redux - A predictable state container for JavaScript apps.
- SwiftUI
- MAUI - .NET Multi-platform App UI
- Oolong - An Elm inspired Model-View-Update (MVU) implementation for Kotlin multiplatform.
- Fabulous - F# Functional App Development, using declarative dynamic UI
- Iced - A cross-platform GUI library for Rust, inspired by Elm
- Redux - A predictable state container for JavaScript apps.
-
-
Who to follow
-
Games
-
-
More awesome
-
Code generators
-
Individual Podcast episodes
- haskell-to-elm - Generate Elm types, encoders, and decoders from Haskell types
- Protoc Gen Elm - Generate Protobuf En/Decoders from .proto files
- Quicktype - Generate JSON decoders and encoders from JSON
- Travelm Agency - Generate typesafe Elm code from translation files
- Quicktype - Generate JSON decoders and encoders from JSON
-
Programming Languages
Categories
Videos
25
Learn
23
Articles
22
Learning Guides
21
Podcasts
18
Editor plugins
12
Conferences
10
Inspired by Elm
9
Conference Videos
9
Run Elm
8
Examples
7
News
7
Community and Support
6
Code generators
5
Other tools
5
Boilerplates
4
Static site generators
4
License
3
Who to follow
2
Frameworks
2
Showcase generators
2
More awesome
2
Testing
1
Libraries
1
Compile and bundle
1
Sub Categories
Games
32
Individual Podcast episodes
24
Playlists
20
Outdated Boilerplates
19
Miscellaneous videos
18
Outdated Tutorials and books (Elm 0.18 or earlier)
15
Why Elm?
10
Atom
8
Other editors
7
Video tutorials
6
Miscellaneous articles
5
Outdated articles (Not relevant for current Elm architecture)
5
Unmaintained
5
Learning Videos
4
Visual Studio Code
3
Sublime Text
1