Vehicle Sync - University Capstone Project

Next.Js

Typescript

Postgresql

picture of vehicle sync dashboard

Description

A CRUD web application built with Next.JS. This application was developed for my university capstone project while completing my BS in Software Engineering

Problem

For my capstone project, I designed and developed a fully functional web application to address a specific business problem, incorporating all required elements to demonstrate my technical proficiency. The application, built with a user-friendly and functional GUI, utilized object-oriented programming principles, including inheritance, polymorphism, and encapsulation, to ensure robust and maintainable code. It featured a search function that returned multiple-row results with clear displays, integrated a secure database component allowing users to add, modify, and delete data, and included report generation capabilities with multi-column, multi-row outputs, date-time stamps, and titles. To enhance reliability, I implemented exception controls and validation functionality, while industry-standard security features protected the application from vulnerabilities. The design emphasized scalability, enabling future expansion without compromising performance, making this project a comprehensive showcase of my ability to deliver a professional-grade software solution.lication that included inheritance, polymorphism, and

Solution

I decided to create a Next.JS application with Prisma as the ORM with a Postgres database since I was familiar with the technology stack from work. The object oriented requirements were a challenge to accomplish with typescript as I was used to mainly using the language in a functional manner with React. I implemented a repository pattern for the ORM operations with a BaseRepository that did all basic CRUD operations. I extended that BaseRepository for the individual repositories and added specific business logic related to their purpose as needed.

Story

This project was successful and I passed to get my degree. I also earned a Capstone Excellence Award from WGU for my work on this project. In particular, when I set up the CI/CD to Vercel, I was unable to connect the universities Gitlab environment to Vercel due to a lack of permissions. Therefore, I set up a temporary key and used the Vercel CLI within a Gitlab pipeline to deploy the web application. The award was for the documentation of the issue and the steps that I took to overcome the deployment roadblock.

Gallery

Gallery image 1