Xanje is a virtual pet collecting game and discussion community. Initially hired as a freelancer to fix up what was a heavily modded SMF forum, I went on to reimagine the entire website from the ground up. I developed the proprietary web-based game, discussion boards system, and management tools. Xanje has been open since 2013, running my codebase since 2016. It has approximately 6,000 monthly active users.
Xanje's main website & backend uses the Laravel PHP framework, client-side uses vanilla TypeScript. Real-Time messaging and notification system runs on NodeJS (TypeScript), communicating with client via WebSockets.
An iOS application is in the works (Swift). The app communicates with the central PHP backend via a new HTTP API which all Xanje platforms are transitioning to in order to take advantage of hypermedia practices.
Xanje's servers run on Amazon Web Services, with five EC2 Ubuntu instances. Amazon's CloudFront CDN is used to reduce the traffic burden of our most accessed pet images.
AWS • PHP 7 • Laravel 5 • TypeScript • ES6 • NodeJS • MySQL • Swift • Electron [pet processing tools] • PayPal & Stripe integration
GoldVine is a web app for accessing the 6-second video sharing service Vine's archive. Press a button to show a random funny vine, or search by username.
Videos play when hovering on desktop, or while finger is touching on mobile. Videos loop, updating the count after each loop.
WebTunes is a web app that allows users to store and listen to music from anywhere with web access, inspired by iTunes circa 2010. You can drag and drop tracks onto the library to have them uploaded into your library, then they can be played back exactly as you'd expect from a music library program. Allows for playlist management.
YeezySupply.com Shopify bot created to automate the process of purchasing the popular low-quantity Yeezy shoe. A CLI tool written in PHP, uses the Selenium ChromeDriver and spoofed Curl requests to automatically purchase items from a Shopify shop, namely YeezySupply.com, based on the user's configuration. Works great for low-demand releases, but one challenge is how to circumvent Shopify's throttle system during high-demand/low-quantity shoe releases.
Below is an early video of the script running, prior to the addition of multithreading (late 2017).
OpenVMK was a hobby project in which I led a movement to create a clone of Disney's defunct Virtual Magic Kingdom (VMK) multi-player online game. VMK was a Shockwave isometric MMORPG that let players hang out in a virtual Disney theme park, modeled after Disneyland.
Isometric tile testing in OVMK client
The game client originally was all DOM-based, but switched to the HTML5 canvas in later iterations. Similarly, the server connection was originally AJAX calls from the client to PHP scripts, but I later adopted WebSockets and ported the game server to Java.
Progress video by me, Feb 2013
PHP • HTML/CSS/JS • JS 2D Canvas • Java • MySQL • vBulletin
Nancy Drew game clone WIP warning: not optimized, big downloads