Hello! I studied Computer Science, and live in Bath. I write code, design games, and occasionally tweet.
Hello! I studied Computer Science, and live in Bath. I write code, design games, and occasionally tweet.

Posts about Javascript Other Categories

Oops, I Accidentally Made Another Fractal Explorer Jul. 27, 2020 in Fractals, Javascript, Text

In the last few days, I’ve been busy re-theming this site, and finally finishing many of my existing projects.

I’ve added lots of missing features, improved the user-experience, added some difficulty options, significantly increased performance, added new tools, improved the visual appearance, added mouse/touch support where applicable, and even made most things (including this blog) work in browsers as old as Internet Explorer 11.

Along the way, I accidentally created another Fractal Explorer.

And I’m not done, not yet.

TabTool Apr. 19, 2020 in Javascript, Text

I made a FireFox extension called TabTool mainly for me, but also for anyone else who wants to give it a try.

Screenshot Screenshot Screenshot

A minimal Firefox browser extension that lets you easily copy, manipulate, and open list of URLs. Supports light and dark!

Tracing Transactions in the Bitcoin Blockchain May. 18, 2018 in Apps, Javascript, Text, University

Blockchain Tracer

This project demonstrates the ability to visualize, and trace transactions through the Bitcoin network, evaluating three different methods. Namely poison, haircut and First-In-First-Out (FIFO).

To achieve this, a web application was created to first build up a network graph representing Bitcoin addresses as nodes, and transactions as directional edges. This allows the user to easily grasp the history of any given Bitcoin address, and then trace any transaction either up or down the graph.

By clicking on a node in the graph, the application will automatically load that address and it’s associated transactions, adding it to the graph. By hovering over a node in the graph, the tool-tip on the right will appear. It displays a number of useful statistics about the address, and gives the user the option to trace transactions by clicking on any of the colourful buttons.

Third Year Project May. 20, 2017 in Apps, Dissertation, Javascript, University, Web

It’s done, it’s over! Months in the making, my dissertation is finished an available from lect.me. My advice for future students, is to start early. Projects like these always take longer then you expect.


Classic Games Apr. 24, 2017 in Javascript, Text, Toys

Classic Games Screenshot

I’ve put together a HTML5 recreation of several classic games. Play online.

A Jison, DnD-style Dice Roller Sep. 27, 2016 in Javascript, Photos, Text, Toys


A Jison, DnD-style dice roller. Type then it will automatically roll. Supports arithmetic, keeping high/low dice, and fudge dice.


npm install fantasy-dice [-g]

roll 4d6h3

echo -e "var dice = require('fantasy-dice');\nconsole.log(dice("4d6h3"));" > dice.js
node dice.js

Spirograph Nov. 7, 2014 in Javascript, Toys, University

Despite their simplicity, a spirograph can create complex and visually appealing shapes. Originally designed to help prevent banknote forgeries, the spirograph is now a children’s toy sold worldwide.

Using simple mathematical equations I’ve created a simulation that creates many random Spirographs. Behind the scenes each Spirograph is rendered to a canvas buffer which is then drawn to the main canvas for performance. Why not play, the code is on GitHub.

Click or use +/-/C to create or remove spirographs. Scroll to speed up or slow down time. Press space to play or pause the simulation. Press T to toggle trails.