Selected Projects

SeasonSync

Web App

NextJS | PostgreSQL | Clerk

PROJECT DESCRIPTION:

SeasonSync is a web application for organizations in the seasonal hospitality industry. Connected directly to Working Adventure, SeasonSync is a hiring platform that provides only qualified, vetted candidates that already have expressed a desire to work in conditions that the organization provides.

Working Adventure

Mobile App

React Native | PostgreSQL | Clerk

PROJECT DESCRIPTION:

Working Adventure is a mobile application for job-seekers in the seasonal hospitality industry. The mobile app allows job-seekers to create their profile, upload their CV, and match with jobs in locations and with activities they want.

SeasonSync

Website

NextJS | CSS | Clerk | Vercel

PROJECT DESCRIPTION:

The landing page, registration, and login portal for SeasonSync, a web application for seasonal hospitality employers. The goal of this website is to convert new organizations into users of SeasonSync.

visit website

Working Adventure

Website

NextJS | CSS | Clerk | Vercel

PROJECT DESCRIPTION:

The landing page for Working Adventure, a mobile application for job-seekers in the seasonal hospitality industry. The goal of this website is to provide more information about Working Adventure and direct users to the mobile app.

visit website

GuessFM

React | MaterialUI | NodeJS | Express | PostgreSQL | Sequelize | Cypress | Netlify | Heroku

PROJECT DESCRIPTION:

Guess FM is a game where users are played a random radio station and have to guess what country it is from.

Inspired by the trend of simple online games like Wordle, Guess FM combines the functionality of GeoGuessr - a game where users guess where in the world a Google Street View image is - with the API of Radio Garden — an app that aggregates radio stations from all over the world. This project was created for the Lighthouse Labs Web Development Bootcamp final project.

WHAT I LEARNED:

Collaborating with two awesome fellow bootcamp students, this project was as much about communication and teamwork as it was technical. From scraping an API for over 36,000 data points, to using an ORM with JavaScript for the first time, to integrating reverse geocoding and the Google Maps API, to my first deployment, there was a lot to learn here.

visit demo
visit repository

Fun with AI

React | NodeJS | Express | OpenAI API | imgur API | Multer | TesseractJS | Netlify | Heroku

PROJECT DESCRIPTION:

This project is a simple app for interacting with OpenAI's powerful GPT-3 model. Users can create their own prompt or choose one of six presets. They can also select their engine and temperature (randomness) before submitting their prompt. If a user receives a hex color code back, the color theme of the app will automatically reflect this. Additionally, users can upload images of printed text. The backend will first perform OCR text extraction via the TesseractJS library, then send to GPT-3 for grammar correction and cleanup, and finally send the result back to the user.

WHAT I LEARNED:

While it's a relatively straightforward app on the surface, this was a challenge for me to design and make fully responsive. Working with semantic HTML and WAI-ARIA standards in a React app was also new to me.

visit demo
visit repository

Jungle E-Commerce

Ruby on Rails | Stripe | PostgreSQL | RSpec | Capybara

PROJECT DESCRIPTION:

Jungle is a mock e-commerce application where users can browse items, add to cart, and checkout using Stripe.

WHAT I LEARNED:

This project is the result of my first experience with Ruby and Ruby on Rails. It served as a great introduction to the MVC pattern, Active Record ORM, and of course the Ruby programming language. The highly opinionated experience of Rails was a huge contrast to my prior experiences with open-ended NodeJS and Express.

visit repository

Scheduler

React | NodeJS | Storybook | Axios | Jest | Cypress

PROJECT DESCRIPTION:

Scheduler is a single-page interview appointment application. Users can browse the calendar by day of the week, see existing appointments, and book new appointments in empty time slots.

WHAT I LEARNED:

This project is the result of my first experience with React. I gained an understanding of how React renders elements, of properly updating state, custom hooks, and how important unit, integration, and end-to-end testing is in development.

visit repository

PasswordKeepR

jQuery | NodeJS | Express | PostgreSQL | Sass

PROJECT DESCRIPTION:

PasswordKeepR is an all-in-one password manager where organizations and users can generate and store their passwords. Organizations can add users, who can view, add, and edit passwords. This project was created for the Lighthouse Labs Web Development Bootcamp mid-term project.

WHAT I LEARNED:

I built this project with two fellow cohort members, and it was my first experience with a SPA. Using a popular legacy library, this project taught me a lot about application flow, RESTful APIs, and the ways a full-stack application shares data across the front end, back end, and database.

visit repository