[028.5] Elm Weekly Drip #28 and Exercise: Extend Charts

Links covering: REST and GraphQL; Plotting; Genetic Algorithms; Monads; and Spaceships. Then an exercise to extend our chart to be a bit nicer.

Subscribe now

Elm Weekly Drip #28 and Exercise: Extend Charts [11.06.2016]

This week's goings-on in the community, and an exercise to take our charts and make them scale to fit the available space and look a little nicer.

We'll begin with links, covering: REST and GraphQL; Plotting; Genetic Algorithms; Monads; and Spaceships.

Metalinguistic abstractions over databases (on the ML)

This is a Mailing List thread begun by Petre Damoc. It starts out as a discussion of abstracting over the database though it seems to initially expect a more direct mapping between database tables and REST resources than is necessary implicit. It quickly moves on to a nice discussion of GraphQL and also branches into a discussion of Use Cases as an architectural pattern, which I'm a pretty big fan of. Lengthy and meandering thread, but enjoyable!

[ h/t @pdamoc ]


terezka/elm-plot

Another charting library for Elm. This package looks great for providing a few nice primitives to make a nicer-looking chart faster, but I really want something like elm-visualization for the sake of the way the scales work, among other things. Still, worth a look for sure! A combination of the two would be pretty fantastic.

[ h/t @terexka ]


codecation/barb

Genetic image reproduction in Elm

Ben Orenstein and Edwin Morris built a pretty great project in Elm that uses Genetic Algorithms to evolve an image that represents a given source image. I've wanted to build something similar for a while so this was a really fun read. A+

[ h/t @r00k and @ehmorris ]


The Return Monad

Harness the power of (model, Cmd msg)

Exploring patterns for dealing with values of the type returned by an Elm application's update function. Leads to the Fresheyeball/elm-return package.

[ h/t @fresheyeball ]


E2: Elm + Express for full-stack web development

A full-stack setup for building Elm apps with an express-powered backend, if that's your style.

[ h/t @nickbalestra ]


Xpilot.io

This is a fantastic Elm-powered remake of the old unix Xpilot game. It plays nicely, and he's also got a kickstarter for creating a multiplayer version.


Exercise

Last time, we modified our dashboard's chart to use elm-visualization. As it stands, our chart doesn't take advantage of the available space very well at all. It doesn't fill the entire space available on large browser sizes, and it gets clipped when we are using a smaller browser. Try to fix both of those related issues, beginning with our time-tracker project, tagged with after_episode_028.4.

Here's a great article discussing how to scale SVG. In general, you ought to be able to make it work pretty well - the S in SVG stands for Scaleable for a reason!

While you're at it, you might also look at moving the styling into an external stylesheet to make it easier to iterate on later, as well. See you soon!