24 days
- a loooooooooooot of features done in a small amount of times
- team project (coordination is key to success)
- learn react and node in one week
- own local webserver using docker compatible with any os
- no security breaks
- react.js
- redux
- node.js
- bootstrap and templating
- socket.io
- sorting and filtering lot's of data
- implementing working UI fast with react
- creating a seed of random users to test the app
- working very fast with deadlines
- working with team mates
This is a dating app that has 4 main features :
A user can register. A mail of confirmation is send to validate his registration. A user can login. A user can modify his information and password once login. A user can reset his password if he forgets it with his mail address. A user can : upload photos, define a profile picture, define his bio, define his age, define his sex and sexual orientation, define tags to better describe him and others...
A selection of user profiles is proposed to the connected user according to his parameters (sex, geographic proximity, interests in common, fame score). He can click on each users to consult their profiles. Each profile is likable, blockable, reportable and dislikable.
You can search for specific user according to specific tags, geographic proximity, age and fame. You can also sort the selection through these properties.
Once two users have liked each other (match) their pictures appear in the user selection of the chat page and they can exchange messages (they can chat). Notification system is in place : a user receives a notification if :
- a user consult your profile
- a user likes your profile
- a user sends you a message
- a user dislike your profile
For more information about the project please see the pdf subject available in french and english at .
You will need docker running on your machine.
####Setup the environement varibales
- Within the root path
# environment variables
cp .env-template .env
- Navigate to /backend path
# environment variables
cp .env-template .env
- Navigate to /frontend path
# environment variables
cp .env-template .env
####Build the containers
In the root path
docker-compose up --build
Note : the port 80 must not be used by another application (like Apache or Skype).
P.S : The build may take some time don't worry be happy and grab a cup of tea :)
Once the containers started. Navigate to frontend to start the server.
npm start
P.S : npm version 6.7.0
####List of links
si.matcha.local:3000 -> backend ( REST API )
app.matcha.local:8083 -> frontend
phpmyadmin.matcha.local:8080 -> phpMyAdmin