Evan

Projects

Everything I've built, from the early experiments to the stuff I'm shipping now.

2026
Obsidian 3D Graph
TypeScriptObsidian PluginDesmos API

A 3D graph visualization plugin for Obsidian that uses the Desmos 3D graphing library to render interactive 3D graphs of your notes. Supports custom styling, filtering, and more.

Obsidian 3D Graph screenshot
2026
Gathr
TypeScriptNext.jsWebSockets

A streamer consolidation platform that lets content creators bring their communities together in one place. Streamers can gather audiences across platforms into a single shared experience.

Gathr screenshot
2026

Find My Force Hackathon

PythonMachine LearningSignal Processing

A defense technology hackathon hosted at UBC where we built ai signal processing tools to detect and classify RF signals.

Find My Force Hackathon screenshot
2024
Coyote Cruises
Web ManagementOperations

The website for Coyote Cruises, a river tubing company I worked at for 5 years and became operations manager of. I built and managed the site end to end.

Coyote Cruises screenshot
2024

CLI Markdown Editor

JavaTerminal UIMarkdown

A terminal based markdown editor built with a curses interface. Supporting live preview, I built this in Java for my introduction to software construction class.

CLI Markdown Editor screenshot
2024
Math Moss
TypeScriptReactCustom Rendering

A math equation editor built to replace tools like MathQuill that are clunky and hard to use. Uses a custom rendering engine to allow for intuitive WYSIWYG editing of complex equations.

Math Moss screenshot
2023
Note Rack
TypeScriptReactMongoDB

A WYSIWYG markdown editor built almost entirely from scratch with no editor libraries. Handles rich text, block-level editing, and keyboard shortcuts all through a custom rendering engine.

Note Rack screenshot
2023
Notes Renderer
TypeScriptReactCustom Rendering

A markdown renderer built to handle the unique syntax and features of my Obsidian notes. Supports desmos graphing integration, custom note embedding, and more.

Notes Renderer screenshot
2022

Better Live Stream Fails

TypeScriptNext.jsWeb Scraping

A tiktok like website for browsing live stream clips. I built a web scraper to pull clips from reddit and a custom frontend to nicely preload and display the videos in a smooth infinite scroll.

Better Live Stream Fails screenshot
2022

Party Poppers

SolidityNFTsGenerative Art

A NFT collection of algorithmically generated characters built using Candy Machine. I designed the traits, wrote the metadata generator.

Party Poppers screenshot
2021
Reddit Comment Video Generator
C#FFmpegYouTube API

A tool that takes Reddit comment threads and turns them into shareable videos. Supported auto uploading to Youtube and gathered over 500k views in total.

Reddit Comment Video Generator screenshot
2021
BC Open Legislature
TypeScriptReactData Parsing

A tool that parses and displays British Columbia legislature data in a way that people can actually read. Built to make government more transparent and accessible.

BC Open Legislature screenshot
2020

Luck be a Landlord Clone

C#UnityGame Development

I rewrote the popular game Luck be a Landlord from scratch so that I could play it and modify it with my own features.

Luck be a Landlord Clone screenshot
2019

Upperworld.io

JavaScriptNode.jsWebSockets

A browser-based multiplayer io game with custom networking, game loop, and real-time state sync. The project that taught me how to write maintainable code at scale.

Upperworld.io screenshot