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
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.
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
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.
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
Raspberry spy: a camera controller
A remote control for the Raspberry Pi ZERO and
the camera settings via WebSocket,
and syncronised Sunrise/Sunset for timelapse photography.
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.
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.