An Easy Way to Make New Elm Apps

The process of setting up the currently popular (Grunt or Gulp) build tools for front-end web apps takes too long, and involves too much boilerplate code.
Brunch is a great solution. It is fast, easy to set up, and reduces boilerplate.
Also, and more importantly, the combination of writing an web app in 3 different languages (JavaScript+HTML+CSS) is just … insane. Why do we do this to ourselves every day?
Elm is a programming language that brings the best of functional programming to the web. It offers a promise of no run-time exceptions (Good riddance X is not a method of Undefined), faster rendering than ReactJS, libraries with guarantees, clean syntax, smooth JavaScript interoperability, and a Time-traveling debugger.
Elm has an easy way to get started called StartApp. I recommend trying it out and reading the source.
Brunch and Elm
If you’d like to use Brunch with Elm, I made a Brunch skeleton for StartApp here: https://github.com/ivanoats/elm-brunch-starter
You can simply brunch new gh:ivanoats/elm-brunch-starter APPNAME to try it out. You’ll get a working “Hello World” start app and build process, ready to go.
It didn’t take long thanks to the great work already done by Mads Flensted-Urech on https://github.com/madsflensted/elm-brunch
It was also inspired by Mike Clark’s Building Reactive Web Apps video course at Pragmatic Studio, which I’d highly recommend.
Photo Credit: American Elms in Central Park
Originally published at blog.ivanstorck.com on October 11, 2015.