Back-end
Twnkl.it is running on Pyramid, which runs on Python. I used Mako for templates, and pygeoip to detect (vaguely) where you come from.
I used Pillow to manipulate images and make images from the math data, and colorific to query images for colors.
I deploy to Ubuntu on virtual servers in the cloud at Linode.
Front-end
I’m using HTML5, the PureCSS css/grid system, and a few other things: DropZone for upload, the Titillium font.
Contents and Illustrations
I wrote everything, took all the photos (except for uploaded twinkles, of course) and drew all the graphic elements, illustrations, and diagrams. Feedback about design is more than welcome!
Other Tools
I love Inkscape for drawing SVG, and begrudgingly tolerate The Gimp for raster image work.
I prefer WingIDE for working in Python, though I used a bit of SublimeText for the bits that Wing doesn't do well, and a bit of Vim too. The Chrome DevTools are also absolutely critical.
I mostly work on Ubuntu, but also on a mac laptop.
What’s Next?
I have some ideas of features to add to this website, like an easy way to order a print of your own twinkles. I’ll probably add other algorithms that will have different aesthetic products, and give you the chance to choose the new code and re-run the twinkle. Let me know if you have a good idea.
Mostly, I want to play around with the algorithms… the fact that such a simple, stupid random bit of math could make something that I like so much makes me think that with a little more care, I can generate some beautiful stuff.
Have an idea? Get in touch
Source Code
I decided to share all of this stuff; the code for this very website is up on github. Some friends thought that I was “giving away my idea” but it’s such a simple idea that I’m not really worried about it. All I ask is that you share any experiments you make with this code.
Licensing:
Twnkl.it code is licensed under the MIT license.
Other content (including 'twinkle' images) is licensed under a Creative Commons license.
More “about” pages:
About ✸
How it Works ❉
About Me