Made by Jules Lasne and Lauris Skraucis
- Why ?
- Installation
- Services in docker-compose
- What does it look like
- How long did it take
- How many lines of code
- What are the features
Matcha is a 42 school project aiming to teach how to make a dating website. Lauris and Jules chose to make it as close as it could be to a real production product. You can find the subject here
First of all, contact Jules or Lauris to get the env files.
For more information, checkout the backend .env.template and the frontend .env.template
You can simply download or git clone the project and, once inside of it, run docker-compose up --build
.
The website will be accessible on port 4242
.
If you do not want to build the containers yourself, you can use docker-compose-gh.yml
instead:
docker-compose -f docker-compose-gh.yml up
First of all, clone or download the repository, extract it if necessary then cd into it.
You'll need python3.8
+. cd in the backend and run:
python3.8 -m venv venv --prompt PyMatcha
source venv/bin/activate
pip install backend/requirements.txt
python run.py
Same thing as for the backend, just then cd
in the backend folder and run
celery -A PyMatcha.celery worker -E --loglevel=INFO -B --pool=threads
cd
in the frontend folder and run yarn install
then yarn run
- Backend on port
8080
- Frontend on port
4242
- Swagger doc on
9000
- PHPMyAdmin for debug on
8183
- Workers on internal port
- Redis on
6379
- MySQL on internal port
Lauris and Jules started working on it at the begining of september and finished on XXX
.
If you see commits before September, it's of an older version where Jules changed twice of frontend partner
Here is a nice visual representation of the commits:
As of Thu 12 Nov 11:40
637 text files.
624 unique files.
164 files ignored.
github.com/AlDanial/cloc v 1.88 T=1.68 s (333.3 files/s, 17377.3 lines/s)
-------------------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------------------
JSON 329 0 0 7924
Python 119 1560 2126 5633
Vuejs Component 53 146 91 4492
YAML 7 32 22 2531
XML 14 0 0 2042
JavaScript 21 44 35 1156
CSS 5 61 5 459
HTML 4 0 22 253
SQL 1 43 66 202
Markdown 4 42 0 139
TOML 1 3 5 21
Dockerfile 1 12 0 18
SVG 1 0 0 8
-------------------------------------------------------------------------------
SUM: 560 1943 2372 24878
-------------------------------------------------------------------------------
- Sign-up and sign-in
- Forgot password email
- Resend confirmation email
- Registration process to add info on user
- Browse recommended users
- Filter them
- Sort them
- Search users
- Filter them
- Sort them
- Like and superlike a user
- Notifications for:
- Like
- Unlike
- Match
- Message
- Chat with instant replies
- Settings page where you can modify everything
- History page
- Superlikes
- CI/CD
- Postman API tests
- Bots
- Swagger API Documentation
- Backend Site map (:8080/site-map)