Portfolio of Projects

Web Projects

Projects developed for the web.


JeffHarris.us

This webpage (Jekyll)
Using the power of Jekyll and GitLab Pages, this page is magically updated on every push to master.

Singing Valentines (Laravel with Inertia and Vue.js) Project Logo
Singing Valentines (Laravel with Inertia and Vue.js)

A white-label service for Barbershop Harmony choruses and quartets to sell Singing Valentines. Still in progress; private GitLab repository.

Upon each push to the Master git branch, GitLab's CI/CD runner pushes a new docker stack, alternating blue/green deployments for zero-downtime deployment.

Staging environment available through the link below.



Inventory System (Laravel with React)

Inventory is a project for a local IT re-marketer that stopped contact during the pandemic. This allows a business to keep track of consignment inventory as it enters the warehouse and sales. The github repo is a mirror of the latest master branch with a few files anonymized to protect the warehouse. Try the demo at inventory.jeffharris.us.

Login Details Use password password and login as superadmin@example.com, owner@example.com, salesrep@example.com, technician@example.com, or employee@example.com to log in as the respective role.
Disclosure Over time, I have three different local repositories that all have the same git log and git remote, but are in seemingly different states and have a different /app structure.

Mass Effect Shepard Generator (POP) Project Logo
Mass Effect Shepard Generator (POP)

Mass Effect, the 2007 Bioware video game, starts by asking the player to create his or her own character.
Sometimes, a player just needs random choices. This page pulls an data from an API and creates a page with the random choices for the user to enter.
The API is vanilla PHP, built in the /api-src folder. On each push to the Master git branch, GitLab's CI/CD runner pushes a copy of the repository to the API server, refreshes composer dependencies and updates the `document_root` directory for zero-downtime deployment.



Domain Oriented Laravel (Archived; out of date)

Domain oriented Laravel is a fork of the Laravel Framework
Using the excellent posts by Brent as a guide, this is a one-step package to install Laravel and make changes necessary to have an opinionated separate domain area from that of the Laravel Framework. Also included is a docker environment and commonly used tools.
`composer create-project jefhar/laravel-domain-oriented blog`

Classwork Projects

Projects developed for, or inspired by a course or class that I attended.
Hangman Project Logo
Hangman

Hangman is the simple find a word game played by children with pencil and paper the world over. Is it the best? Probably not. Is the the fastest? Probably not. However, I built it and it works. This uses the `/usr/share/dict/american-english` word file from Ubuntu 19.04. The proper nouns and words with non-letter characters have been removed.

Odds or Evens Project Logo
Odds or Evens

Odds Or Evens is a simple game played by two people. One chooses "Odds" or "Evens," then both players shoot by placing a hand with extended fingers into the middle. The fingers are added, and if the sum is odd, the "Odds" player wins. Otherwise, the "Evens" player wins.

Weather in Charlotte, NC