Skip to content

Instantly share code, notes, and snippets.

baking holiday goodies with all this time i saved switching to serverless

Josh Hawkins hawkins

baking holiday goodies with all this time i saved switching to serverless
View GitHub Profile
import time
from config import config
from train_board import TrainBoard
from metro_api import MetroApi, MetroApiOnFireException
STATION_CODE = config["metro_station_code"]
TRAIN_GROUP = config["train_group"]
REFRESH_INTERVAL = config["refresh_interval"]
hawkins / autoexec.cfg
Created Apr 25, 2020
CSGO autoexec.cfg
View autoexec.cfg
// Knife switch bind!
alias +knife slot3
alias -knife lastinv
bind q +knife
// Scoutzknivez scroll jump and crouch
// Leave key configs the same in settings; space=jump, ctrl=duck
bind mwheeldown +jump
bind mwheelup +duck
hawkins /
Created Jul 19, 2019
Python 3 simple HTTP server to print post data
#!/usr/bin/env python3
from http.server import BaseHTTPRequestHandler, HTTPServer
class S(BaseHTTPRequestHandler):
def _set_headers(self):
self.send_header('Content-type', 'text/html')
hawkins /
Created Oct 15, 2017
CTF Introduction to Web Security Resources

Web Security Introductions

This is a list of a few resources a friendly hacker at MSU shared with me during my junior year. They're catered toward experienced web developers looking to learn a little bit more about web security (ala me). I thought a friend on Twitter could use them, so I'm sharing them for anyone else who may be in that position :)


Begin quote from friend's DMs

This is what helped me get me feet wet with web security problems:

hawkins /
Created Oct 2, 2017
CTF Suggested Tools for Getting Started

Suggested tools notes

From 10/2/2017

Evan McBroom talked about some of his favorite tools for use in CTF. Myself and others in the audience also suggested some.

Reverse Engineering


hawkins / canary.js
Created Jun 6, 2017
Canary.js - Chirp til you drop
View canary.js
const { readFile, appendFile } = require("fs")
let logfile = "canary.log"
const now = () => new Date().toISOString()
const sleep = ms => new Promise(resolve => setTimeout(resolve, ms))
const appendFileP = (filename, data) =>
new Promise((resolve, reject) => {
hawkins / screen.js
Created Jan 16, 2017
Node.js blessed screen - keep your output separate from your input!
View screen.js
* I've used blessed to create a textbox at the bottom line in the screen.
* The rest of the screen is the 'body' where your code output will be added.
* This way, when you type input, your program won't muddle it with output.
* To try this code:
* - $ npm install blessed --save
* - $ node screen.js
* Key points here are:
hawkins /
Created Aug 21, 2016
Python CLI for managing WiFi connections with NMCLI
import os
import click
def cli(ctx):
"""The CLI for PyFi"""
View c-terminal-emulator-colors
# From
#include <stdio.h>
#define ANSI_COLOR_RED "\x1b[31m"
#define ANSI_COLOR_GREEN "\x1b[32m"
#define ANSI_COLOR_YELLOW "\x1b[33m"
#define ANSI_COLOR_BLUE "\x1b[34m"
#define ANSI_COLOR_MAGENTA "\x1b[35m"
#define ANSI_COLOR_CYAN "\x1b[36m"
hawkins / git-php-webhook.php
Last active Dec 3, 2020 — forked from marcelosomers/git-php-webhook.php
A basic webhook for deploying updates to repos on Github to your local server
View git-php-webhook.php
* This script is for easily deploying updates to Github repos to your local server. It will automatically git clone or
* git pull in your repo directory every time an update is pushed to your $BRANCH (configured below).
* Read more about how to use this script at
* 1. Edit the variables below
* 2. Upload this script to your server somewhere it can be publicly accessed