Light Mode
descriptive text

webXash

Vue WebAssembly

Playable Half-Life in the browser with Xash3D and its port to the browser with emscripten with loadable games via ZIPs from your disk. With improved fullscreen and resizable window support.

descriptive text

Nightwatch

EmberJS

An SEO monitoring tool for websites, search keywords and competitor websites. It also displays aggregate data, analytics and keyword metrics in graphs with customizable dimensions. Written in Ember, I rebuilt most of the frontend as a part of a large redesign effort and moved the build pipeline to Embroider as well as updating the frontend tooling for a better developer experience.

descriptive text

WebHL

Preact

A 3D webGL GoldSrc map viewer and fork of hlviewer.js that uses the Filesystem Access API to load game assets directly from your machine. You can use this to play back GoldSrc demo files and fly around Half-Life 1, Counter-Strike 1.6 and other GoldSrc based maps.

descriptive text

Pasta.to

Vue Electron PWA Rails

[indev] A clipboard sharing PWA, web app and desktop client built in Vue 3 that aims to make cross device file sharing easy and fast. Backend written in Rails 6 and utilizing websockets from AnyCable for fast realtime communication. Electron 16 is used to build the desktop client.

descriptive text

thestarposter.com

Vue 11ty

A web based interactive poster editor for mobile and desktop for Heureka Prints with a 3D celestial map that accurately displays the night sky at a given date, time and location. Built in VueJS.

descriptive text

folder2json

Svelte

A web page that lets you open a local folder and convert its paths and sub-folders into a JSON object via the Filesystem Access API. Written in Svelte

descriptive text

CitySize

React

A progressive web app and interactive map built with leaflet in React that lets you accurately compare geographic features like countries, cities, states and even buildings. Inspired by thetruesizeof.com and powered by nominatim.openstreetmap.org GeoJSON data.

descriptive text

SVG2PNG

React

A small set of tools for exporting SVGs to scaled PNGs and data URIs wrapped into a simple web UI written in React.

descriptive text

Corrupt.wiki

Gitbook

An open source wiki running GitBook where documentation on the art of corrupting video games is available.

descriptive text

SVG/Emoji Corrupt

React

An experiment in SVG manipulation built in React. The app takes an inline SVG, reads the d="" paths and replaces the targeted numbers with the numbers you set in the control panel. All the emojis in the menu are SVGs loaded from the Twemoji CDN.

descriptive text

Ticket2Calendar

React/XZingJS

A fully clientside boarding pass scanner in your browser. Built in React, using a web assembly build of the barcode scanning library xzing. Take any boarding pass with a PDF-417 or Aztec barcode and scan it to view your flight itinerary and add it to any popular online calendar. Only works on stable Chrome unfortunately

descriptive text

thepixelgrid.org

Rails

Built in collaboration with Max Synnott pixelGrid is a realtime collaborative online canvas anyone can draw pixels on for charity, inspired by Reddit's /r/place experiment. The pixel placements update in real time so you can draw with others! The app is a fixed height HTML5 canvas built on Rails, uses websockets for real time pixel placement updates, sidekiq for queued database updates and UIKit for the frontend.

descriptive text

Rumreggae-Bali.net

HTML/CSS/WP

The website and bio of Rum Reggae Indonesia, a traditional batik shirt company. Designed and themed around photos of their factory and products. Also an experiment in staticizing WordPress pages, hosted on GitHub pages.

descriptive text

SourceRuns Forum

CSS

A forum for the Source Engine speedrunning community. I made the CSS layout for the SMF forum software they used to run (now uses Discourse).

descriptive text

btr.pm

Astro Svelte 11ty HTML

The website you're on now! Built from scratch using HTML, then 11ty, then Astro with a bit of Svelte. A good excuse to try out new static site generators and an experiment in image compression and content delivery optimization.

descriptive text

Singapore Airshow 2018

Photos

A collection of photos taken of the aerobatic displays at the 2018 Singapore Airshow.