Assemblance

A student's compiler explorer for x86 assembly

An undergraduate independent work project advised by Bob Dondero. Assemblance is a webapp which compiles simple C programs, and illustrates the mapping between the source and compiled (x86-64, AT&T syntax) assembly and provides helpful explanations of the various mnemonics used, by parsing the gcc-generated DWARF debugging information.

Eth Typed Data

Typed, structured ethereum data, on-chain and off.

An open source library developed while working on the uport project at Consensys. This is effectively a javascript implementation of the EIP712 ethereum type system, allowing runtime type safety when manipulating EIP712/solidity types, and providing convenience functions for hashing, signing, and generating JSON RPCs for the eth_signTypedData endpoint.

An x86 process emulator and visual inspector/debugger for the browser.

Undergraduate Senior Thesis project advised by Bob Dondero. Processable is a teaching tool designed to generate interactive visualizations of programs written in x86 assembly, accurate down to the byte. Consists of a nifty React frontend on top of a pure-javascript x86 virtual machine and linux process emulator. I’m really proud of this one.

uPdo

A makeover for Pd in your browser.

A collaboration with Josh Becker developed for Hack Princeton 2018. uPdo is a react-based web frontend for a port of the puredata visual audio programming language called WebPd. It extends webpd with the ability to load, edit, export, and play Pd patches in the browser. It was made in 24 hours, so it’s a little buggy.