Matcha is a Tinder-like app realized in Node.js and React, using Express Framework and a MySql database. It allows you to complete a detailed profile and to meet new people close to you thanks to geolocation. We've also integrated other factors in our algorithm to connect people, such as age and interests. When two people match together, they can talk in real time in our chat, thanks to Socket.io. We've used MDBReact and Ant-design to style our app. Our website is fully responsive.
It's the second web project of 42 School and I realized it with @dcirlig.
Don't hesitate to contact me if you have any question!
Node version :13.12.0 Clone the project. Init database : cd database => node database.js (replace the credentials with your own phpmyadmin ones).
Start server : "npm run server" in root folder. Start client : run "npm run client". In your browser, access https://localhost:4000/ and https://localhost:8081/. Choose to open the websites even with the security alert (https self signed certificate).
Homepage with a slider representing our App philosophy.
Sign-in page.
Sign-up page.
You have to complete your profile before being allowed to access our Explorer section. Here, you can add pictures, edit your age, your location (or update your geolocation), precise your preferences, add a quick description and even add tags to express your interests. You have a preview of your public profile on the right side, that updates in real time. Also, you can edit all your account information, such as password, email or username in your account section.
In this section, you will only find people that share your interests, your location and your preferences. You can like them, block them or report them as fake users, see if one person is online, and explore while waiting for a match!
Every Matcha user has a public profile that you can consult if you're logged in.
And you're finally here... Your first match! As soon as somebody likes you back, you can talk to this person in private and in real time thanks to our chat.
Receive notifications in real time for likes, likes back, unlikes and messages.