Programming

Directus Strava

An extension I wrote for the Directus to easily and automatically backup strava activities. I believe in controlling your own data but Strava has many useful integrations with other apps and devices so this allows me to get the best of both worlds.

More programming

Idåsen Controller

Ikea sell a motorised standing desk, made by Linak. The desk comes with a phone app to control it via bluetooth but there's no version for the desktop. I did a little digging and scripting to fix this oversight.

More programming

Kindle Dashboard

Second hand Kindles are a cheap source of linux driven eink displays. They are a bit janky and hard to work with but with some effort you can get them displaying custom text and images. The classic project is a low power weather/calendar display, and thats what I did.

More programming

Docker Composer

A script I wrote for managing interdependent docker services; what is it, how does it work, and why would you use it.

More programming

Dockerising this website

I dockerised this website in an attempt to learn more about docker. I also ended up learning a little bit about the linux file system and created a useful script for composing docker-compose scripts.

More programming

Olm - a static site generator

I have written my own static site generator. The world always needs more static site generators. It's not finished but I'm already using it on a live site and it's faster and more easily extensible than what I was using before.

More programming

Github Apps

Github Apps are a nice way to automate some of the complicated or boring tasks in a version control workflow. At the moment it's in Early Access so the documentation is a bit sparse and the functionality is incomplete. Still it's possible to do some cool things.

More programming

Rain Gauge Display

The Environment Agency has a really cool rain data api which I've used in a little react app. Just a simple display of the rain data so you can check what the water levels in caves are going to be like.

More apps caving programming

Multiple queues with Celery and RabbitMQ and Flask

Quick description of how to get celery running on two different apps with two separate queues on the same RabbitMQ instance.

More programming

Simple DDNS

simple-ddns is a lightweight home made dynamic dns program.There is a little flask application that can be run on a VPS to keep track of something elses IP address (a home network for example). It can also edit an nginx configuration to redirect a subdomain or url to the ip. An included python script can be used on the client (via cron job or manually) to update the flask app.

More programming