Harmony Fork
Over the past.. less than 24 hours as of this writing, I’ve been working on a small fork of mr. doob’s probably-somewhat-famous-by-now harmony drawing project done up in Javascript/HTML. The goal was pretty simple: make this hackjob a little more iPad friendly – because my current obsession is to play with my iPad, which inevitably means drawing on it. There are plenty of existing drawing apps for the iPad, but I don’t really think any are quite as neat as what the brushes in harmony (and zefrank’s original Scribbler) allow you to do, plus this is free and open source.
So, what I’ve done is added a few touch gestures to harmony:
- Use two fingers to adjust brush size
- Use three fingers to get the color selector
- Use four fingers to reset the current brush
In addition, I’ve made some UI tweaks, including locking input in the color selector to the particular ring you interacted with first for the duration of the touch. This prevents a lot of those moments where you accidentally alter the hue and saturation by swiping over the inner ring and not realizing that it could change.
I’ve also added different Save and Export buttons. The latter functions the same as the previous Save button, and just lets you pull your flattened drawing out of harmony. The former now forces harmony to save the current image to local storage, meaning your work is safe-ish (sort of, kind of, probably not really).
Finally, there are a few mirrored brushes. I only mirrored those I personally use, namely web, sketchy, shaded, and simple. I’m not sure there’s much utility in mirroring others, and though I use the fur brushes, I don’t see them as being good candidates for that tweak. Alternatively, I might just add toggles to mirror any brush, which would be fairly simple to do. Consider that on the never-shrinking to-do list.
Anyhow, here’s a link to a live copy of the fork, and the source code is available on GitHub as usual.