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.
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 ]
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 ]
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+
Harness the power of
(model, Cmd msg)
Exploring patterns for dealing with values of the type returned by an Elm
update function. Leads to the
[ h/t @fresheyeball ]
A full-stack setup for building Elm apps with an express-powered backend, if that's your style.
[ h/t @nickbalestra ]
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.
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
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!