Open Source

I have been privileged to work professionally on open source, as well as having the leisure time to work on a few projects on my own time. This is a sample of my open source work.

Agnostic Database Migrations

52 MIT teamhg-memex/agnostic Docs

Database migration tools are often highly tailored to a specific programming language or application framework. Agnostic is a database migration tool that can be used with any language or framework. It supports MySQL, PostgreSQL, and SQLite.

Attack Flow

512 Apache center-for-threat-informed-defense/attack-flow Docs

Attack Flow helps executives, SOC managers, and defenders easily understand how attackers compose ATT&CK techniques into attacks by developing a representation of attack flows, modeling attack flows for a small corpus of incidents, and creating visualization tools to display attack flows.

Encoding Tools

26 GPL-3.0 mehaase/encoding-tools

A tool for generic byte string manipulations, similar to Burp Suite Encoder or CyberChef. Online version available at https://encoding.tools and can also be used offline.

Page Compare

90 teamhg-memex/page-compare

A simple heuristic for comparing the structural similarity of two HTML documents. This algorithm was also used for the clustering step in the construction of the Dark Web Map.

Python Chrome DevTools Protocol

87 MIT hyperiongray/python-chrome-devtools-protocol

A Python library for Chrome DevTools Protocol (CDP), which can be used to drive headless Chrome. This library uses code generation to produce native Python wrappers from the machine-readable CDP specification. This is a sans-I/O project that can be wrapped for use with any concurrency framework, such as multithreading, asyncio, Trio, etc.

Starbelly

43 MIT hyperiongray/starbelly

A GUI-driven web crawler written on top of the Trio async Python framework. The crawler uses a novel “crawl policy” system to simplify the configuration of directed crawlers.

Trio Chrome DevTools Protocol

57 MIT hyperiongray/trio-chrome-devtools-protocol

This library provides a Trio-compatible CDP implementation by wrapping Python Chrome Devtools Protocol and adding an asynchronous I/O layer.

Trio WebSocket

68 MIT hyperiongray/trio-websocket

An implementation of the WebSocket protocol on top of the Trio asynchronous framework. This library is used in Starbelly and Trio CDP. It’s also used in third party products around the world, such as this super adorable robot.