Luna Paint for VS Code
A raster graphics image editor extension for VS Code, enabling editing images inside your code editor.
This page contains the some of the projects I've developed in my spare time, ordered by release date/when I started contributing. The majority of my open source work is available on GitHub.
A raster graphics image editor extension for VS Code, enabling editing images inside your code editor.
An xterm emulator written with web technologies that makes it easy to write a terminal emulator for the web. I became a maintainer on the project shortly after starting to work on it. This is one of the projects that powers the VS Code integrated terminal.
A Node.JS library that enables forking pseudoterminals. It was forked from the unmaintained pty.js primarily to improve support for Windows and modern versions of Node. This is one of the projects that powers the VS Code integrated terminal.
A JavaScript library that visualises sorting algorithms. It is written in JavaScript and uses Snap.svg to draw and animate the algorithms.
Sorting visualiser was built to help readers get a better understanding of the algorithms by animating each comparison and element manipulation.
VS Code is a lightweight cross-platform text editor from Microsoft. I joined the team in February 2016, but had been contributing to the project since it was open sourced.
A tiny JavaScript library that makes the title attribute of <abbr>
elements touch accessible. It works by listening to the touchtap-event so the functionality is only exposed on touch-enabled devices. A custom event handler can then be attached to display the tag's content as desired.
A library I wrote for this website to handle searching through tags in an interesting way. It creates a tag cloud that can filter articles by multiple tags. Each tag that is selected will fade tags that are not contained in any of the currently visible articles, this allows the user to narrow down the filter much more easily.
Most of the code samples presented in this website are open source and available on GitHub under the gwtw organisation.
An Android widget to help learners of the Korean language that rotates through a list of English words with their corresponding Korean translations.
A web app that visualises pathfinding algorithms such as A* and Djikstra's, using various backing data structures. It is built on Polymer and js-data-structures.
Originally named canvas-astar.js, it was initially a much simpler project which only visualised A* with fixed parameters to supplement a technical article I wrote on A*, I expanded the project due to personal interest and to experiment with various development tools.
My spouse's beauty and lifestyle blog. Following a similar story to Growing with the Web, it was started on Blogger with a customised theme and eventually grew beyond what Blogger's system could handle.