250-line virtual DOM implementation from scratch. Extremely lightweight and optimized for progressive enhancement.
- Languages: JavaScript
Batch recolor an image to match a series of provided templates. Implemented entirely client-side using native browser APIs to analyze and manipulate pixel data.
- Languages: TypeScript
- Frameworks: SvelteKit, WebGL
A small tool to automatically pull GitHub repositories on a given interval using cron or Windows Task Scheduler. Uncommitted changes are preserved and merged as possible.
- Languages: JavaScript
Convert a Minecraft resource pack between versions and editions with no compromises using a powerful command-line interface.
- Languages: JavaScript
Self hosted Firestore-like database with API endpoints based on micro bulk operations.
- Languages: PHP, JavaScript
Official web application for the Faithful Resource Pack project. Features a Minecraft texture gallery with detailed information about contributions, texture uses, and more, add-on submission with an in-built review system and file hosting, and an administrator panel to safely edit the texture, user, and contribution databases directly.
- Languages: JavaScript, HTML, SCSS
- Frameworks: Vue 2, Vuetify Components, Vite
Public RESTful API for Faithful's texture database, add-on submission, and more. Uses the in-house developed firestorm-db project to power file uploading, bulk editing, and statistic aggregation, and the tsoa framework to generate REST endpoints with in-built Discord authentication.
- Languages: TypeScript, JavaScript, (indirectly) PHP
- Frameworks: firestorm-db, tsoa, Swagger UI
Content-centric main website for the resource packs themselves. Features add-on search and pages, news articles and posts, and download pages with rich metadata and server-side rendering.
- Languages: TypeScript, JavaScript, HTML, SCSS
- Frameworks: Nuxt 4, Vue 3, Vuetify Components, Bootstrap CSS
Guides for texture making, submitting add-ons, and more. Powered by the VitePress framework, which converts markdown files into rendered HTML along with custom styling.
- Languages: TypeScript, Markdown, CSS
- Frameworks: VitePress, Vue 3
Discord bot with a fully automated texture pushing and submission system for the Faithful Discord servers. Automatically creates and retrieves texture submissions for each resource pack and schedules daily texture pushes with upvoted results.
- Languages: TypeScript
- Frameworks: Discord.js, Octokit
Provides a Discord interface for the Faithful API using slash commands and buttons to make viewing textures and contributions easier for end users.
- Languages: TypeScript
- Frameworks: Discord.js
General-purpose Discord bot, featuring per-server custom prefixes, a fully featured feedback ticket system, a customizable announcement system, and Wordle.
- Languages: Python
- Frameworks: Discord.py
Fictitious video editor company I created over the span of two weeks. I built a design language around the idea, and designed a series of logos and wordmarks for the project that I later used on a showcase website.
- Languages: JavaScript, HTML, CSS
- Frameworks: Vue 3











