About Hi! My name is James, and I'm a sophomore at the University of Illinois at Urbana-Champaign. I'm interested in cybersecurity and back-end engineering. I'm currently interning at Trail of Bits.

During my time in high school, I participated on StuyPulse, Stuyvesant's FIRST robotics team. I also participated in several Capture the Flag (CTF) competitions under the team name in/s/ane.

Check out some of my projects down below!
OpenCTF

A powerful, extensible, easy-to-use platform for hosting Capture the Flag competitions. Features include a quick installation process, full admin panel, and an online code judge. Used to host EasyCTF 2017, which featured over 6000 users. Currently undergoing a rewrite.

Python
MySQL
Docker
revm

An implementation of the Ethereum Virtual Machine (EVM). Based on the yellow paper.

Rust
lol-chime

A terminal utility for League of Legends that notifies users when their friends are finished with their game with an audible ping. Currently has over 10,000 downloads on NPM.

Node.js
stackanswers.vim

Vim plugin that allows users to query StackOverflow and view a list of answers in an easy-to-read format.

Python
Vimscript
Graphics Engine

A graphics engine written from scratch for the Computer Graphics course at Stuyvesant. It supports drawing and saving basic 2d and 3d shapes, animated gifs, and basic lighting.

Go
GitHub Stupidity

A web application for calculating the stupidity of a GitHub repository, based on this article. Additional features include, viewing the stupidity of a language, calculated from the average stupidity of the top 20 repositories in that language. Any statistics generated from this should not be taken seriously.

Node.js
PracticeCTF

A collection of writeups from Capture the Flag cybersecurity competitions I've participated in for practice.

Python
HomeworkServer

The process of submitting my CS homework at Stuyvesant was tedious and error prone, so I wrote a utility for interacting with it through the command line.

Python