Run & Route Hub is a running-focused web app for UH students that helps runners:
This creates a motivating and safety-focused running community built specifically for UH students.
This is also deployed to Vercel.
Also check it out in our Github Repository!
Throughout the project, the team consistently communicated with each other, with multiple check ins and meetings. Here are some of my contributions to the team
In this project I was in charge of developing the authentication pages, which allowed users to register, log in, and access their protected data securely using any emaill they have in our system. Users are able to log in/log out successfully, and protected pages redirect unauthenticated users.
In the project I was in charge of the website functional design, and implemented my ideas through the database schema I pushed. Using Prisma, I defined model for users and routes, and tested the schema with seed data as shown below.
model User {
id Int @id @default(autoincrement())
email String @unique
password String
role Role @default(USER)
displayName String?
location String?
paceMin Float?
paceMax Float?
preferredDistanceKm Float?
terrainPreference TerrainPreference?
experienceLevel ExperienceLevel? @default(BEGINNER)
bio String?
daysAvailable String[] @default([])
prefersMorning Boolean @default(false)
prefersAfternoon Boolean @default(false)
prefersEvening Boolean @default(false)
}
model Route {
id Int @id @default(autoincrement())
name String
distanceKm Float
distanceMile Float
colorr Int
colorg Int
colorb Int
path Location[]
}
Utilizing my implemented database schema, I was able to generate a mock up user profile page that shows User ID, location, date signed up, along with “stat snapshots” of last 30 days of running
I separated the task into two different components, a ProfileHeader.tsx, and a StatsOverview.tsx. This allowed my group to have a realistic UI demonstration on how the user profile would appear for the application
As our project finalizes, I implemented a user route review system that allows the user to search, choose, and rate/review routes based on their enjoyability and difficulty.
This is our landing page, featuring our purpose in the center with multiple text blocks beneath it going into detail about the different features we have.
For a more in depth dive into the intentions, goals, and purpose of this project.
This page shows some off some of the routes on a map with there start and end points labelled.
This page allows you to use a google map to choose the start and end points for your run. Once you select your route and give it a name it will show up in the routes page.
This page will allow you to search for runs based on certain criteria allowing you to find routes personalized to your search.
This page will allow you to find other runners and interact with them whether it is allowing you to schedule runs with them or just talk.
This page can be found under the email where you will have stats associated with your account making it easier for you to be found by other users.
This page is the other end of the find running buddies that allows you to view all the routes and click on one you wish to review. An option to search using ID is available in the search bar.
Clicking on a route allows you to rate the difficulty, enjoyability, and give additional feedback.
Working on UH Run and Hub and with my incredible teammates opened my mind to a new understanding of software engineering beyond programming. I learned about design patterns, Github Issue managment using mile stones, ESLint rules, and even thorough communication with my team.
I was able to learn about effective communications, effort estimation and project timeline thanks to the teammates that I got to know and work with through this project. I gained confidence in presentation, coding review, and front end programming. Working closely with UI components enhanced my experience and ability to crtically think (what would my user want?) about the needs of the program and how it can be translated to a working UI.