sharpoblunto

It gets the hose again is an automated garden irrigation control system I designed and built using a Raspberry Pi. It is able to schedule garden waterings and uses the OpenWeatherMap API's to intelligently cancel watering if its already raining in the current area. The system can be controlled via a web interface built with Node.js, React, & Redux. The system can also be controlled via voice operation using Siri and integration with Apples HomeKit APIs.

View on GitHub View information

Junkship is an experiment in creating a procedurally generated universe. It generates random planets, starscapes, asteroid fields & allows you to fly all the way from space down to the surface of a world. The game is written in C++, HLSL, & JavaScript using a custom 3D engine with realtime shadows, HDR & volumetric lighting, and hot reloading of shaders and scripts. Almost all content is generated at runtime so the entire program is only a few MB in size.

View website

MGDF is an open source framework designed to make developing, installing, distributing, and updating games easier. The framework uses DirectX 11 for graphics, DirectInput/XInput for user input (has full support for the xbox 360 controller), and OpenAL for audio (supports 3d positional audio and audio streaming using Ogg Vorbis). The framework also provides a virtual filesystem which allows easy access to resources stored in zipped archives (new archive formats can also be plugged in).

The Junkship engine is built upon the MGDF framework.

View on GitHub View website

Lumiere is a Raspberry PI based controller for visualizations on LED matrix screens. I use it for a a virtual fireplace & aquarium installation, but it can be extended with further visualizations. The system can be controlled via a web interface built with Node.js & React. The system can also be controlled via voice operation using Siri and integration with Apples HomeKit APIs.

View on GitHub

Lightr is a Raspberry PI based controller for a Philips Hue smart bulb. With 3 rotary encoder switches it allows you to control the Hue/Saturation/Lightness of the bulb & shows the current values on a small OLED screen. When idle the OLED screen also functions as a digital clock.

View on GitHub

This site allows you to generate convincing sounding randomly generated project names. The name generation is done using Markov chains and an input dictionary consisting of popoular JavaScript project names on GitHub.

The library behind all the Markov chain construction and word generation has been released as Foswig.js and is available on GitHub under the MIT license.

View on GitHub View website

The Dukebox of Hazzard (Dukes for short) is a music player that allows multiple users to share and contribute to the music being played from a single set of speakers. The primary use case for Dukes is in office or social situations where there is a single music player, but where multiple people would like to pick the music to be played. Dukes ensures everyone gets to hear the music they want by adding each users picks in a round robin so that everyone gets thier fair share of play time.

Dukes runs as a standalone HTTP server on any modern version of Windows, and is accessible via a web based UI on any device or operating system.

View on GitHub Download app