Audiobook markdown renderer

A Ruby experiment that renders MP3s from markdown articles, with Google speech API and Wavenet voices. Web Components drive the story selection interface.

TacTicToe on a 3D Rubik Cube

tic-tac-toe with a twist. A multilayer tactical game where players can rotate the 3D matrix and use Rubik’s cube strategy. Built with BabylonJS, React, Redux and ES6.

Lifedrawing with SVG on WebSockets

An ultra minimal UI that uses WebSockets to stream huge SVG images; a zero wait experience where the sketch recreates in real time line by line. The NodeJs server is hosted on Heroku.

Infinite procedural landscape

The interface uses perlin noise to describe the geography, into which artifacts are injected. It wraps, horizontal and vertically, giving the impression it’s seamlessly infinite. PHP was used to access instagram API.

Desktop shredder for i3 lockscreen

i3 is my prefered window manager. Here we create a lock screen using OpenCV and numpy to slice the desktop into strips. Developed with iPython, aka Jupyter notebook.

Improve UI with chrome extensions

Chrome extensions are amazing, you can use the API to inject a modern UI into a legacy ASCII interface. Hacking to enhance the user experience.

The Lorenz attractor in Blender

Here we use the python console in Blender to create a 3d spline that expresses various chaos algorithms and then turn the spline into a geomerty mesh.

Raspberry spy a camera controller

A remote control for the Raspberry Pi ZERO and camera written in BASH, with a JavaScript UI to access the camera settings via WebSocket, and syncronised Sunrise/Sunset for timelapse photography.