Applications

Nebula Project Logo
Nebula

Nebula provides a simplified dashboard that allows researchers to launch and manage their own servers on AWS.
It also provides SSH Key management, scheduled shutdowns, group controls, and a variety of other features.

GitConsensus Project Logo
GitConsensus

GitConsensus makes it possible to automate project governance on GitHub by using “reactions” as a voting mechanism to automatically merge (or close) pull requests.

BadThings Slack Bot Project Logo
BadThings Slack Bot

The Bad Things Daily Twitter account provides scenarios for tabletop disaster planning. This application sends random scenarios right to Slack.

League of Automated Nations Project Logo
League of Automated Nations

This web application is an alliance tracker for a programming game called Screeps. It maintains rankings as well as an interactive map showing which rooms are claimed by different players and alliances.



GitStars

A Github API aimed at Front End use. This API uses extensive caching and authenticated APIs to work around Github API Ratelimiting. It drives the Github Star Badges on this very site.



ec2details

This service provides an API with metadata (including pricing) for every AWS EC2 instance type.
It processes the AWS Bulk API to multiple times a day to always provide the most up to date information.

Libraries



Stash

This caching library supports multiple backends with a consistent frontend. It supports hierarchical keys, stampede and dogpile protection, automatic miss distribution, and more.



JShrink

This library minifies javascript using 100% pure PHP, allowing it to be integrated into applications with minimal work and maximum compatibility.



github3apps.py

This library is a wrapper around the github3.py library, giving it the ability to build GitHub Applications.



Fetch

This library wraps the native PHP IMAP libraries around a modern object orientated interface.

CLIs

GitConsensus CLI Project Logo
GitConsensus CLI

A standalone python application and library for managing Github PRs using Reactions as a voting mechanism.



JSONSmash

A node cli shell that lets users browse large json objects like they would a filesystem.



SecretCLI

A simple CLI tool that makes reading and writing to the AWS Secrets Manager super easy.



URLParser

Another really simple tool, the URLParser takes in various URIs and returns back the piece you're looking for; such as the scheme, domain, or port.

Puppet

psad Project Logo
psad

This module controls the Port Scan Active Defense program, providing active response to block port scans.

rsnapshot Project Logo
rsnapshot

This advanced rsnapshot module makes backing up servers trivial. SSH keys and accounts are created, as are wrapper scripts around sudo to prevent opening the root account to ssh.

ghebackups Project Logo
ghebackups

This module turns a server into a Github Enterprise backup server. It creates the relevant accounts, adds cronjobs, and manages ssh options to ensure that backups occur.

hieratic Project Logo
hieratic

This module makes all of the native datatypes present in Puppet accessible directly using Hiera in order to make testing and prototyping faster.

inspiricd Project Logo
inspiricd

This module allows IRC networks and servers to be defined using inspircd.

iscsi Project Logo
iscsi

This module makes it possible to define iscsi connections in Puppet. This makes it easier to work with AWS Storage Gateways and other iscsi devices.

Misc



NLM Scrubber Assist

The NLM Scrubber is a package released by the National Library of Medicine to remove PHI from medical documents. This project wraps that in a docker container and provides python and bash libraries.



tedivms-flask

This is my default Flask project template. It contains a complete docker environment, user management system, API system, Celery worker and tasks, and other important modules in addition to a Bootstrap based front end.



Jekyll Portfolio

The theme behind this very portfolio is available for you to use to build your own portfolio site with Jekyll and Github Pages.



HeadedHome

Using an IOT Button as a trigger, this Lambda function estimates my time of getting home from work based off of current public transit times and sends a text to both myself and my partner with that ETA.



syntaxhighlighter_yaml

This Wordpress Plugin adds YAML Syntax Highlighting.

Screeps

Screeps is an an open-source sandbox MMO RTS game for programmers, wherein the core mechanic is programming your units' AI.
Quorum Project Logo
Quorum

The Quorum project is an experiment that uses Screeps, GitConsensus, and the ScreepsAutoSpawner to see what happens when the community has to vote to accept new pull requests- and any vote that passes gets pulled. It initially started as being written primarily by me and overtime has gotten more community involvement.

ScreepsAutoSpawner Project Logo
ScreepsAutoSpawner

This program checks the Screeps world to see if the player is still alive, and if not it automatically respawns them into the world. This requires scanning the world to find appropriate locations, scoring them, and then placing the first spawn automatically in the selected room.

ScreepsDashboard Project Logo
ScreepsDashboard

This dashboard was created for the Quorum project and lets the public view all of the otherwise hidden Screeps player information. This application exposed wallet, memory, segment, and console data (which gets stored in ElasticSearch to allow querying of historic data).



python-screeps

This library was the first third party library for the Screeps API and has been responsible for spawning a large third party ecosystem.



screeps_console

This ncurses based terminal application provides a standalone console for the Screeps world.

screeps_notify Project Logo
screeps_notify

This bridges the Screeps world with the real world by allowing users to send notifications programmatically from in game to a number of providers, including Text Messages and Slack Notifications.

screeps-stats Project Logo
screeps-stats

Using a reverse engineered API this project takes data saved inside the game “Screeps”, transforms it and injects it into elasticsearch.

Spawn1 Project Logo
Spawn1

This is a mobile client for the Screeps game built using NativeScript. It has a built in messenger, profiles of different alliances, a websocket based console for interacting with the system, and other informational pages such as the wallet and market order pages.

screepsmod-konami Project Logo
screepsmod-konami

Konami is a Screeps Server mod that changes the world settings to allow AI to grow significantly faster. This makes development easier as longer term issues will show up in smaller amounts of time.

screeps-backup Project Logo
screeps-backup

This tool takes a backup of an existing account's memory and segments and provides the ability to restore from those backups.