Software Engineering
PreWriter
PreWriter
PreWriter is an AI-driven content creation suite for SEO specialists and marketers. As part of the Bruce Clay, Inc., software development team, I contributed to this project by refactoring the entire UI to match a completely new design spec. I also added specific features, such as notifications upon completion of tool runs and content exports to Google Docs, Excel, .csv, and Google Sheets. I also built many of the tools in the suite, including the Article Citations, Page Validation, Prospect Targeting, and Keyword Research tools. This involved everything from prompt engineering, to database migrations, to back-end views, to front-end templating. Finally, I refactored most of the tools to use Claude via AWS Bedrock rather than OpenAI.
-
HTML
-
CSS
-
JavaScript
-
Node.js
-
Python
-
PostgreSQL
-
SQLite
-
TailwindCSS
-
Alpine.JS
-
Django
-
Pydantic
-
Instructor
-
Huey
-
Boto3
-
LangChain
-
Git
-
GitHub
-
AWS
-
OpenAI
-
Claude
Portfolio
Portfolio
I built this responsive website as a portfolio to showcase my work in software engineering, AI prompt engineering, and instructional design. The portfolio itself also serves as an example of my skill with Python, Django, MySQL, TailwindCSS, and Alpine.js.
-
HTML
-
CSS
-
JavaScript
-
Node.js
-
Python
-
MySQL
-
SQLite
-
TailwindCSS
-
Alpine.JS
-
Django
-
Git
-
GitHub
-
Heroku
-
AWS
-
Cloudflare
-
Zoho
-
Twilio
MoveMinder
MoveMinder
MoveMinder lets you track the contents and status of every box, appliance, and piece of furniture throughout a move. Create a record for each move and each parcel, including its type, contents, and weight, as well as the room in which it belongs. Print labels with a QR code for each parcel, and scan the QR code to update the parcel's status.
-
HTML
-
CSS
-
JavaScript
-
Node.js
-
Python
-
MySQL
-
PostgreSQL
-
TailwindCSS
-
Django
-
Git
-
GitHub
-
Heroku
-
AWS
-
Gemini
Odyssey
Odyssey
Odyssey uses the Google Gemini generative AI to craft thrilling adventures for tabletop roleplaying games in seconds. Choose from a large selection of the most popular games, enter a lesser-known title, or describe an unpublished/homebrew game. Refine your request with a campaign setting, number of players, experience level, and other parameters.
-
CSS
-
Node.js
-
TypeScript
-
Python
-
MySQL
-
TailwindCSS
-
React
-
Django
-
Git
-
GitHub
-
Heroku
-
Gemini
-
Gencraft
Support Hero
Support Hero
Support Hero is a customer support ticketing system. Customers are able to sign up, create tickets, and correspond with agents on a given issue. Agents are able to correspond with customers as well as create notes on given comments. Users can also toggle dark mode to change the color of the platform to a darker theme.
-
CSS
-
JavaScript
-
Node.js
-
MongoDB
-
Bulma
-
Express.JS
-
React
-
Mongoose
-
GraphQL
-
Git
-
GitHub
-
Heroku
Legacy Portfolio
Legacy Portfolio
Support Hero is a customer support ticketing system. Customers are able to sign up, create tickets, and correspond with agents on a given issue. Agents are able to correspond with customers as well as create notes on given comments. Users can also toggle dark mode to change the color of the platform to a darker theme.
-
HTML
-
CSS
-
JavaScript
-
Node.js
-
Bulma
-
React
-
Git
-
GitHub
Tech Blog
Tech Blog
This full-stack application offers a simplified blog service. It includes user registration and authentication functionality and allows users to create blog posts and comment on any user's posts. Users can also edit or delete their own blog posts and comments. To accomplish this, the application renders views using Express-Handlebars, relies on Express for routing, and stores data in a MySQL database.
-
JavaScript
-
Node.js
-
MySQL
-
Express.JS
-
Express-Handlebars
-
Sequelize
-
Git
-
GitHub
-
Heroku
Just Tech News
Just Tech News
Just Tech News allows users to post links to news stories related to technology, comment on each others' posts, and upvote (like) posts. For this project, I refactored the back end of an existing application to use Python instead of Node.js, which also required a few small changes to the front end.
-
Python
-
MySQL
-
Flask
-
Jinja2
-
SQLAlchemy
-
Git
-
GitHub
-
Heroku
Text Editor
Text Editor
This progressive web app (PWA) loads a basic text editor in a browser. The editor automatically saves text entered by the user in a clientSide database using IndexedDB and retrieves the user's saved text on load. In addition, the user can install the editor as an app for offline use.
-
JavaScript
-
Node.js
-
Webpack
-
Git
-
GitHub
-
Heroku
Employee Tracker
Employee Tracker
This command line application interacts with a MySQL database, representing a sliver of an HRIS. The user can select various actions, including viewing a table with departments, roles, or employees; adding a department, role, or employee; updating an existing employee's role; or exiting the system.
-
JavaScript
-
Node.js
-
MySQL
-
Git
-
GitHub
Team Profile Generator
Team Profile Generator
This command line application prompts the user to enter pertinent details about a team manager and as many additional team members as desired. Then the application dynamically generates an HTML file to display the details for each team member. In addition, this project incorporates unit testing using Jest.
-
HTML
-
JavaScript
-
Node.js
-
Bootstrap
-
Jest
-
Git
-
GitHub
CatWorx Badgemaker
Social Network API
Social Network API
This project consists of a MongoDB database and routes to create, read, update, and delete data from the database. The database includes models for users and thoughts, with the thought model containing a subdocument for reactions. Users have a friends list, facilitating relationships with other users. In addition, thoughts and reactions reference users as owners, and users have a list of thoughts.
-
JavaScript
-
Node.js
-
MongoDB
-
Express.JS
-
Mongoose
-
Git
-
GitHub
Note Taker
Note Taker
This app allows a user to save notes in an online repository so they can be retrieved, viewed, and deleted from anywhere. For this project, the front end was provided as starter code and did not require refactoring. The back end had to be created from scratch.
-
JavaScript
-
Node.js
-
MongoDB
-
Express.JS
-
Mongoose
-
Git
-
GitHub
Just Tech News
Just Tech News
Just Tech News allows users to post links to news stories related to technology, comment on each others' posts, and upvote (like) posts. For this project, I refactored the back end of an existing application to use Java instead of Node.js, which also required me to rebuild the front end.
-
Java
-
MySQL
-
Spring Boot
-
Thymeleaf
-
Git
-
GitHub
-
Heroku
Aliens vs. Humans
Aliens vs. Humans
A simulation in the style of a tabletop roleplaying game based on a laser tag arena where I used to work. It programmatically generates a human character and an alien character and then simulates combat between them, describing the results through Standard Output.
-
Java
-
JUnit
-
Git
-
GitHub