DISCLAIMER: PUBLIC VERSION FOR SHOWCASE
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.
In order to setup the project, please proceed as follows:
- 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
- Then you need to change your directory into the newly created folder called
mentor-matching
with the following command:
cd mentor-matching
- 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
- 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.
- Change your current directory to the root folder of
mentor-matching
with the following command (if you are not in the root folder):
cd ..
- Then build up the docker container with the following command:
docker compose up -d --build
- 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
You see an overview of the most popular mentors to get an idea, of what you can expect from the platform
In your own dashboard, you will always see your current matches and in which status these are.
Have a short chat, or plan your next session. It is up to you
You had a great experience with a mentor or mentee? Great! You can show this with a rating for the user
- The Docker was designed in a Linux environment. Therefore there were some issues with a development environment based on Windows