Skip to content

Full-Stack Platform for connecting mentors and mentees, to share their knowledge

License

Notifications You must be signed in to change notification settings

timemir/MentorMatch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

  DISCLAIMER: PUBLIC VERSION FOR SHOWCASE

 

 

Mentor Matching

The mentor-matching application shall connect learners and experts in a convenient and efficient way. Users create mentor and/or mentee profiles that an algorithm matches with a suitable counterpart.

Based on user A’s preference for in-person learning, location, and interest in cooking, they were matched with user B.

Setup

In order to setup the project, please proceed as follows:

  1. First, you need to clone this repository with the following git command, while being in your desired directory:
  git clone https://github.com/timemir/MentorMatch.git
  1. Then you need to change your directory into the newly created folder called mentor-matching with the following command:
  cd mentor-matching
  1. Then, you need to create a .env file inside the ./backend folder, where you can also find the .env.template file.

It should have the following properites:

SECRET_KEY=your_super_secret_key
POSTGRES_USER=your_postgres_username
POSTGRES_PASSWORD=your_postgres_password
POSTGRES_SERVER=your_postgres_server_address
POSTGRES_PORT=5432
POSTGRES_DB=your_postgres_db_name
AUTH_SECRET=your_secretkey
ACCESS_TOKEN_EXPIRE=100
ALGORITHM=your_chosen_algorithm

Note: Please do not use the given example values (except the port) and add your own. If you want to change the port, you also have to change it in the docker-compose.yml file. And if you are not sure what to do, here is an example that should work:

SECRET_KEY=supersecret
POSTGRES_USER=postgres
POSTGRES_PASSWORD=postgres
POSTGRES_SERVER=db
POSTGRES_PORT=5432
POSTGRES_DB=postgres
AUTH_SECRET=secretkey
ACCESS_TOKEN_EXPIRE=100
ALGORITHM=HS256
  1. Then, you need to create a .env file inside the ./client folder, where you can also find the .env.template file. It should have the following properites:
VITE_CLOUDINARY_CLOUD_NAME=YOUR_CLOUDINARY_CLOUD_NAME
VITE_CLOUDINARY_API_KEY=YOUR_CLOUDINARY_API_KEY
VITE_CLOUDINARY_API_SECRET=YOUR_CLOUDINARY_API_SECRET
VITE_CLOUDINARY_URL=YOUR_CLOUDINARY_URL

Note: You have to create an account on Cloudinary and create an API key. Then you can add the values to the .env file. For a tutorial on how to do this exactly, please refer to this tutorial or just search for how to upload images to cloudinary.


For the frontend, backend and the Database, we are using Docker. For the following steps, we are assuming you installed and setup Docker correctly on your system.

  1. Change your current directory to the root folder of mentor-matching with the following command (if you are not in the root folder):
  cd ..
  1. Then build up the docker container with the following command:
  docker compose up -d --build
  1. After the docker builder has been build successfully, you can boot it up with the following command:
  docker compose up

The following servers are now running:

  • Frontend port 5173
  • Backend port 8000

Examples

Tour Video

Mentor Overview

You see an overview of the most popular mentors to get an idea, of what you can expect from the platform

Bildschirmfoto 2023-04-06 um 14 07 46

See all your matches in one place

In your own dashboard, you will always see your current matches and in which status these are.

Bildschirmfoto 2023-04-06 um 14 15 49

Get in contact with your mentors and mentees via chat

Have a short chat, or plan your next session. It is up to you

Bildschirmfoto 2023-04-06 um 14 16 49

Rate your experience

You had a great experience with a mentor or mentee? Great! You can show this with a rating for the user

Bildschirmfoto 2023-04-06 um 14 17 15

Known Bugs

  • The Docker was designed in a Linux environment. Therefore there were some issues with a development environment based on Windows

Authors

About

Full-Stack Platform for connecting mentors and mentees, to share their knowledge

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published