For some time I've been meaning to do a "dribbble-to-code" thing and then this popped up in my inbox...a little later...another great piece from Paul Lewis popped up...and so I downed tools on my Elm potterings and decided to follow suit...but in a "purely" functional way.
Inspired very much by Ramda and the classic mostly adequate guide, I decided to write the whole thing as point free as possible...and not use any libraries. So I would have to roll my own functions as and and when I needed them, twist, apply and flip my way out of any corners I found myself in and generally end up with a lot of lines of code. However...what I did find...it was really easy to debug...with no unit tests or even breakpoints, hazarding a guess at what was wrong with a single piece of "work" was relatively easy. As expected, code reuse went up, my productivity slowly went up...after making many...many mistakes and it was a very different but enjoyable experience compared to writing imperative code with classes and classic inheritance.
Enough with the preamble...this is Amit's dribbble:
and this is what my end product looks like for the web:
(the poor quality of my gif belies it's true beauty)