Projects

Here's a little of what I have done. Making things is so much fun!

Bible Reminder 365

Bible Reminder 365

New Year's Resolutions is how it all got started. I'm not a big fan of that sort of thing, but the spirit of the day got me thinking about a very important aspect of my Christian faith: Bible reading. Some reflection led me to think that email reminders would be a great way to become more consistent in my intake of the Word of God. What began as a hobby project for myself has grown into a full web-app and email service (built on the MEAN stack and served up via the Vercel platform). Users can sign up for various translations, number of chapters per day, time of day for the email delivery, and change things up as they go. Version 2.0.1 is currently running (as of 7/30/18). Tolle Lege!

ng-tailwindcss

ng-tailwindcss

This was an exciting project, as it was my first publicly downloaded npm package! This cli tool enables Angular developers to drop Tailwind CSS into their projects with just a few commands. The project came about because (as of 6.0.3) Angular does not grant access to the postCSS plugins that tailwind otherwise seemlessly integrates with, unless the developer ejects from angular cli (and loses the development speed the cli offers, which is the point of using tailwind in the first place--this is not an acceptable trade). I solved this by creating a chokidar watch script that works concurrently with ng serve to rebuild css files when changes are saved. At this point, the project is somewhat deprecated, due to Angular finally supporting build process augmentation, but there are a handful of users out there relying on it still.

Play The Mind

Play The Mind

This project was a ton of fun to work on and to play with the finished product. I was playing this card game with friends and family, and it just hit me one day that I could use this very asynchronous/concurrent game-play as a way to stretch the current limits of my programming skills and make something really fun to enjoy later. I used Hasura's GraphQL Engine to create the schema and handle event publishing, and I discovered Glitch, which made iterating on cloud functions a seamless process. The final project is running on Now (React Frontend), Heroku (GraphQL Engine/PostgreSQL DB), and Glitch (Webhooks). One fascinating piece of building this game was creating the game engine to rely on dependable, single-delivery events from Hasura. I initially set it up as a GraphQL subscription, listening to 'live' games, but that caused more trouble than it was worth. By listening to individual tables and specific database operations, I could guarantee that each event was unique and purposeful.

VBS Scoreboard

VBS Scoreboard

My first desktop application, built with electron. This scoreboard application was built for the 2019 Vacation Bible School at Lighthouse Baptist Church. Click 'Live Project' to download it for Windows.

tehpsalmist.com

tehpsalmist.com

The OG website. I wanted to use this portfolio site as an opportunity to stretch my current skillset, so I eliminated all 3rd party libraries (yes, even jQuery! 😜), and wrote most of the layout in CSS Grid (💗Love it!💗). My JavaScript is all ES6, and I wrote some Node.js programs to help my build process run smoothly (without overdoing it). Basically, this is my 2017 Thesis in Code.

Forward Conference Landing Page

Forward Conference Landing Page

The headmaster at Faith Christian Academy approached me with the idea of having a conference to bring together the speakers from some of the various college/career preparation seminars we have had at our school this year. As I was working on putting the conference together, it seemed right to me that we should have a landing page to direct our potential guests. I decided to give my newly acquired skills some practice and built this site from scratch and hosted it on GitHub pages.

No, No, Abi!

No, No, Abi!

<span>One of my favorite projects from the Udacity Nanodegree was building this Frogger-esque game using HTML5 Canvas and Object-Oriented Javascript. This project challenged me to think programmatically and helped me gain a more intuitive grasp of O.O. Programming in Javascript. <strong>Also, if you can put all Abi's toys away without touching a single Yucky Bug, send me a screenshot! It's way harder than it looks!</strong></span>

Report Card Templates

Report Card Templates

This project turned out to be my gateway drug to programming. I had just ported the entire FCA Student Information System over to a new software platform, and I was excited to dig into the new functionality available. When I stumbled on the customization Kit, I was immediately inspired by the possibilities for our brand. I spent the next month meticulously combing through the API documentation and learning about radical concepts like loops and variables. The document itself was built using Microsoft Excel to establish the grid layout, which was then saved as HTML. I was fascinated by the whole process, but didn't realize the impact these small discoveries would have 3 years later.

High School Transcript Templates

High School Transcript Templates

Part of my responsibilities at FCA involved sending student transcripts to other high schools and universities. Unfortunately, very few SIS's have an attractive default transcript template. Once I gained some solid footing in CSS, I jumped into this project with the hopes of improving our students' first impressions with college advisors. I used inline styles to structure a grid system and fine-tuned the variable loops to display uniformly within the template. I was super pleased with the final result!