All Projects
Audio Visual Slider

An application I created at the height of the COVID-19 pandemic as part of the course content of a Dynamic Web 1 (JavaScript) course I was (and still am) teaching. We had just migrated to online learning, and I wanted to create an application that visualized what we were all feeling. I selected images that expressed those feelings, and synched the animations with the beat of music I chose. It was a rough time, but my students for that class were really amazing. I was truly inspired by them.
$stack:appendChild/css in js animation/css keyframes/css transitions/DOMContentLoaded event/event listeners/getElementsByTagName/innerhtml property/input event/manipulating the dom/modern javascript/node sass/project/web audio api
Basic Python Web Server

A Python3 project exploring how to build simple synchronous and asynchronous HTTP servers using http.server, socketserver, and asyncio.
$stack:python3/http.server/socketserver/asyncio/web-server/project
Canvas 2D Breakout Game

I always had wanted to be able to create games using the HTML5 Canvas 2D API, so I built (and refactored) a Canvas 2D Breakout Game inspired by one I came across on MDN.
$stack:babel/canvas 2D/eslint/innerhtml property/keydown event/keyup event/modern javascript/mousemove event/node sass/project/webpack
Chattr public and private realtime chat

This is a refactoring of my original Node.js Express Socket.io app using the EJS (Embedded JavaScript) templating engine for the front end. I finally got to replacing EJS with React.
$stack:create react app/express/git/git hooks/heroku/heroku cli/homebrew/husky/mobile first design/nodejs/react/react-environment-variables/responsive design/socketio/websockets
Checksum Verification: Kali Linux Download

Verifying a Kali Linux ISO download with a SHA-256 checksum on macOS using shasum, then installing it into an isolated UTM virtual machine on Apple Silicon.
$stack:checksum/sha-256/shasum/kali linux/cybersecurity/security/macOS/command line/utm/virtualization/virtual machine/project
Django Polls Package

The Official Django Polls App repackaged as a standalone, installable Python package, following the Django project's advanced tutorial on writing reusable apps, complete with a pyproject.toml build config, MANIFEST.in, and BSD-licensed distribution.
$stack:python3/django/reusable-apps/packaging/setuptools/pypi/project
Dragging Bubbles App

I have always wanted to closely tie audio and audio volume controls with visual and creating multiple audio sources, which I tie to one input of type range. So what better way than with the HTML5 Web Audio and HTML5 Canvas 2D APIs!
$stack:ajax/canvas 2D/click event/create buffer source/create gain/create media element source/input event/mobile friendly/modern javascript/pointerdown event/pointermove event/pointerout event/pointerover event/pointerup event/node sass/project/set at target time/web audio api
Encrypting/Decrypting Files and Strings

A Python encryption/decryption toolkit comparing Fernet symmetric encryption in Python against GnuPG on the Command Line, for encrypting and decrypting both files and strings.
$stack:python3/encryption/decryption/gnupg/symmetric encryption/command line/macOS/project/security
File Organizer App

A Python3 script that sorts files into folders automatically based on their file extension.
Guess the Keys App

A fun little game made with JavaScript, SCSS/CSS3, and HTML.
$stack:disabled property/event listeners/coverage/istanbul/javascript/keypress event/project/tests/unittests/vite/vitest