We developed a mentor matching software targeted towards online students (mentors and mentees) as well as mentor program administrators. Penn-Pal provides an intuitive and simple portal for mentors and mentees from different locations, time zones, backgrounds, and experiences to sign-up and connect with each other. Mentor program administrators can use the application on a desktop or mobile device to create a new mentoring event, and customize mentor-mentee matches.
Include the link to your Devpost project page here: Devpost
Check-out the online version here: https://penn-pal.vercel.app/
We are a group of three UPenn MCIT Online students who are participating in the MOSA Fall 2022 Hackathon.
- Kris Stern - Devpost ID: kastern – Penn email: kastern@seas.upenn.edu – GitHub
- Dan Fitz - Devpost ID: danfitz – Penn email: danfitz@seas.upenn.edu – GitHub
- Bonnie Tse - Devpost ID: bonniet – Penn email: bonniet@seas.upenn.edu – GitHub
Home Page: https://penn-pal.vercel.app/
Create Mentor Event: https://penn-pal.vercel.app/event/new
Event Created Successfully: https://penn-pal.vercel.app/event/success?eventName=Test+event&id=12&uniqueID=GxoXxTB0exc6kHR4WaQwy
Mentor/Mentee Application: https://penn-pal.vercel.app/event/register
Meet your new mentor: https://penn-pal.vercel.app/event/status/24/tp5dQyDf8S6FIjuVMGE23
Coming Soon: https://penn-pal.vercel.app/coming-soon
Oops: https://penn-pal.vercel.app/oops
Step 1: Download WebStorm IDE
https://www.jetbrains.com/webstorm/download/#section=mac
Step 2: Download Node.js (version > 16.10)
https://nodejs.org/en/download/
Step 3: Type in your (MacOS) Terminal, to install yarn package
sudo npm install --global yarn
You can check if yarn is installed.
yarn --version
Step 1: Download the front-end code from penn-pal-frontend
Step 2: Load the code into WebStorm https://www.jetbrains.com/help/webstorm/opening-reopening-and-closing-projects.html
Step 3: In the Terminal in WebStorm, make sure you have all the updated yarn packages.
yarn install
Step 4: To run the code.
yarn dev
Step 5: Program Administrator - Go to http://localhost:3000 with your browser to see the Program Administrator Mentor Program Event creation view.
Program Administrator - Home Page http://localhost:3000
Program Adminstrator - Create an event http://localhost:3000/event/new
Fill out all the required feeds in the Event Creation form and click on the "Create event" button on the bottom of the page http://localhost:3000/event/success?eventName=Mentor+event&uniqueId=12345
Step 6: Mentee - Go to http://localhost:3000/event/register with your browser to see the Mentor and Mentee sign-up form.
Click on Mentee Icon to get to Mentee Sign-up form (questions customized for mentee) - http://localhost:3000/event/register
Fill out the application and then click on "Submit application" button on the bottom of the page. - http://localhost:3000/event/success?participantName=Ben&id=2&uniqueID=12345
Step 7: Mentor - Go to http://localhost:3000/event/register with your browser to see the Mentor and Mentee sign-up form.
Click on Mentor Icon to get to Mentor Sign-up form (questions customized for mentor) - http://localhost:3000/event/register
Fill out the application and then click on "Submit application" button on the bottom of the page. - http://localhost:3000/event/success?participantName=Ben&id=2&uniqueID=12345
Step 8: Found a Match page: Go to http://localhost:3000/event/status/1/yP3tp-C7vOndxThHVpD6o
Step 9: To terminate Penn-Pal, in the Webstorm Terminal type "Control + C"
^C
Optional:
To install the backend, please refer to the ReadMe in them penn-pal-testdatagenerator repository
To install the test data generator, please refer to the ReadMe in them penn-pal-testdatagenerator repository
To develop Penn-Pal, we used a host of technologies and tools to enable a feature-complete experience for the user:
Front-end:
- Next.js - Web Development Framework w/ Server-side Rendering
- React.js - Web Development Library
- Chakra UI - User Interface Component Library
- Axios - HTTP Request Utility
- LottieFiles - Animations
- Vercel - Hosting Platform
- WebStorm - JavaScript IDE
Back-end:
- Strapi - Headless Content Management System (CMS)
- Node.js - Server Environment
- PostgreSQL - Object-Relational Database
- JavaServer Faces Widget Library - JWL - Authentication Widget Library
- Heroku - Hosting Platform
- Postman - API Testing
Test Dataset Generator:
- Python Faker - Python Package to generate fake data
- PyCharm - Python IDE
MIT License
Copyright (c) 2022 Penn-Pal
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.