A free, open source notes app for the web.
2020 — TypeScript, React/Redux, Node/Express, GitHub OAuth
I built this app because I wanted a simpler, IDE-like, WYSIWYG-free note-taking program that would be accessible from any platform via the web. I also wanted it to sync without creating users or requiring a database.
The app allows plain text or markdown with previews, syncing, internal wiki style note-linking, drag-and-drop, prettier, syntax highlighting, light/dark mode, search, categorizing, and more!Write-upSourceDemo
A retro game emulator for three platforms.
Chip8.js includes a CPU class that handles all the internal logic of the emulator, and individual classes written for interfacing with a web, command line, or native client. The emulator plays CHIP-8 ROMs for simple games like Pong, Tron, and Tetris.
While writing this project, I learned a lot of fundamentals about binary and hexadecimal base systems, how bits and bytes work along with ASCII encoding and big/little endian values. I also learned about CPU memory, timers, stacks, the fetch/decode/execute cycle, and creating clean interfaces for the logic of your code to communicate with.Write-upSourceDemo
An MVC framework from scratch in PHP.
2018 — PHP, MySQL
In my time of working with custom PHP systems, I noticed a lot of extremely messy, haphazardly put-together code, code that had no sense of design or planning, and was also outdated and insecure.
A front-end design toolkit for developing responsive web apps.
2016 — Sass, CSS
I made my first websites in the late '90s, when HTML was written in uppercase, tables were using for creating layouts, and CSS didn't exist yet. When CSS came around I learned the most basic of float based layouts, but then I went off and worked another career for a decade.
When I came back, something called responsive design was all the rage, and Bootstrap, Semantic UI, and Foundation were popular ways to implement it. I wasn't happy using something I didn't understand, and I thought those frameworks were too bloated, so I created my own with Sass that I used for several design projects. Primitive was created to provide helpful, browser-consistent styling for default HTML elements, such as buttons, forms, tables, lists, and typography.SourceDemo