Admissions Hub
Agile group project to rework an admissions hub to track incoming students into the Galvanize program.
Table of Contents
General Information
This project is the culmination of months of 🚀 hard work 🚀 growing our skills within the Galvanize course. We came together as a team to rework an existing project from a previous cohort in order to meet the demands of a client.
- 👨🏻✈️ 📝 Project Manager: Chris Stewart (pri), Rane Gray (alt)
- 👨🏻🎨 🖼️ UI Manager: Rane Gray (pri), Daniel Purdy (alt)
- 👷🏻♂️ 🏗️ Architecture Manager: Joe Goralczyk (pri), Jordan Carlson (alt)
Working together as an Agile group, we worked hard to redesign this application visually and functionally per our client's needs. We refactored authentication to add protected routes and JSON Web Tokens (JWT) along with hashed password storage, a dashboard with an interactive table element that allows for tracking prospective stuents, and an interview page that implements a usable coding space to collaborate between admissions personnel and students.
- Components each member worked on.
- Chris - testing, authentication
- Rane - UI redesign, authentication
- Jordan - refactor code editor, refactoring alert messages
- Joe - Authentication-login routing, testing, minor fixes
- Daniel - Interview space design
Technologies Used
Features
- [x] Login Authentication with hashed passwords stored in the database
- [x] Tracking for currently logged in user, ability to modify account
- [x] Central hub to view and manage all incoming students and cohorts/classes
- [x] Code Editor to knowledge-test incoming students to verify they have basic JS understanding.
Architecture
Deployment Structure:
Final ERD for Database:
Progress Screenshots 🧱
Project at the time we took it over
Login & Create an account
Dashboard
Interview
Sprint 1 Completion
Login
Dashboard
Interview
Sprint 2 Completion
Login
Dashboard
Interview
Developer Setup
NOTE We are using Dockerized environment only in a developer build. When we were ready to deploy it, we didn't use Docker. Refer to the Deployment Setup section when ready to deploy.
The API is deployed to Railway, and then railway points to vercel.
- Fork and clone this repository
- From the root directory of the cloned repository
- npm install
- npm install --prefix api
- npm install --prefix client
- docker compose up --build
- Point your browser to
Deployment Setup
When we were ready to Deploy, we stopped using the docker compose file because the services we chose didn't support it. Instead, we seperated the API, Database, and Front-end.
Vercel: Front-end
Railway: API, Database, SocketIO
Project Demonstration
Usage
- Click on Create Account! button
- Type in all your info and provide a valid password
- Click Submit
- Type in your email and password and Click Login to explore the dashboard
Current Status
Room For Improvement
- Ideas:
- A "student-facing" side of the application for students to manage their status
- Adding photos to users and students' profiles.
- Having a data visualization of the number of students who pass/fail the interview, maybe some other metrics for Galvanize to capture.
Acknowledgements
- Inspired By:
- Our instructors, all of our hard work, and the hard work of previous cohorts
- Based On:
- Galvanize Inc. Admissions Hub assignment