Open Source Contributions

Contributions to major projects like git and Blender

Recently I have made some contributions to open source projects that I wanted to put in one place.

December 30, 2021

Rocket League Story Mode

Added Story Mode to Rocket League

RLBot is a framework to create and play against custom bots. I was able to leverage the framework to create a story mode where you play against bots to take over cities. As you win, you can recruit teammates and purchase upgrades! The features was merged back into the RLBotGUI which is the main way of playing against community bots.

July 2, 2020


ESLint plugin to lint JSON

ESLint doesn’t natively support linting JSON. So this plugin hacks around the plugin system to support JSON parsing.

December 29, 2017

Rocket League: Invisibot

Invisible Rocket League bot

Invisibot is Rocket League bot based on Kamael. It is able to go invisible when far away and suddenly appears when it is near the ball or a player.

November 17, 2020


Game where you play as RBG

RBGnRGB is a fun browser game we made for the Github Game month. The game is built using the Phaser framework. You play as RBG and try to destroy monsters by matching their RGB values.

November 1, 2018

Blender Addon: Add Outline

Add Outline effect in Blender

The addon allows you to add NPR/Cartoonish outlines in one click. Unlike Blender’s Freestyle feature, this method works in Eevee as well as Cycles engine.

November 16, 2020

Math Square: Vortexpool

Vortex simulator at MoMath

MoMath is the National Museum of Mathematics and they have a yearly hackathon where people make exhibits using their SDKs. One of the SDK’s allows you to control the giant touch screen on the floor that kids are usually running around on. Our entry, Vortexpool, came in second in the hackathon. It simulates a vortex for each person it detects on the floor. The link takes you to a demo in the browser (click to create a vortex and click again to remove it)!

July 25, 2018

Supreme Court Transcripts

Auto-updated archive of Supreme Court argument transcripts

Supreme Court Transcripts was an existing archive of transcripts of arguments of the Court. The archive was generated through some undocumented scraping process. To keep this archive updated, I wrote a script to update the existing archive and configured it to run via GitHub actions.

November 1, 2019

Python AST Preview

VSCode Extension

Python AST Preview is a VSCode extension that lets you see the AST of the Python file you are working on!

January 19, 2019


Toy version of the Sweet32 attack

Sweet32 is a birthday attack which exploits encryption algorithms with small block sizes. Sour16 is a toy version that exploits the same attack for block sizes from 8-40 bits.

December 29, 2017


Encrypted personal journal

A flask based journaling website backed by a sqlite/sqlcipher databse. The database matches layout of the sealnote android application so data can be imported/exported from the android app. The project has been archived since the android app has been archived as well.

December 29, 2017


Disable/enable yubikeys via an app indicator

yubitoggle-applet adds an app icon in your taskbar to quickly check the status and toggle your yubikey on/off. Tested on Ubuntu but should work on other Linux OS too. It uses yubitoggle to actually toggle the state of the yubikey.

March 31, 2018


Personal Plaid-based money tracker

With the increasing number of accounts with banks/credit cards, I was finding it difficult to keep track of all my accounts. I tried Mint, Quicken and GNUCash but I had issues with all of them. So I made Lpaid to help me keep track of it! Its a node application that uses Plaid to interact with banks and uses sqlite to store the data locally. The README on github has more info on the project!

November 1, 2017