Skip to content

Eddie2111/4Shadi

Repository files navigation

4Shadi

This project aims to work with marriage match making. We have used multi service architecture to structurize this project. There are multiple apps that handle each of the functions all by themselves using their own database. The whole application is using NextJS app router as frontend. FastAPI, Flask, NodeJS as backend apps. MySQL, MongoDB is being used by multiple apps in the backend.

1. Client

  • Stack: React, TypeScript, NextJS, TailwindCSS
  • Frontend Application
  • Has all the page of User Interface
  • Has communcation with the services through API
  • Has all the features of the application
  • Has all the pages of the application

Run Command (Windows):

npm run dev

Fix Lint:

npm run lint

2. Blogs

  • Stack: Flask, AWS, MySQL
  • Relationship based therapy blogs and tips
  • Online law support
  • Instant security on meetup [frontend]-> avoid this
  • Report a problem

Run Command (Windows):

python -m flask --app app run --port=3700 --reload

Fix Lint:

python -m autopep8 --in-place --aggressive --aggressive app.py

Test command:

python -m flake8 app.py

3.Profile

  • Stack: FastAPI, MySQL,MongoDB , Motor, Beanie
  • Signup and profile registration
  • login and logout token generation and expiration
  • token check and authentication
  • get data for profile

Run Command (Windows):

python -m uvicorn app:app --reload --port 3500

Fix Lint:

python -m autopep8 --in-place --aggressive --aggressive app.py

Test command:

python -m flake8 app.py

4.SearchEngine

  • Stack: NodeJS, MySQL
  • Profile sorting based on tags (educational qualification, heights, age, location, Married/Divorced)
  • Profile suggestion based on tags (location, age, likes/preferences)
  • Boost Profile matching upon search depending on payment status
  • Search history
  • Favourite lists

Run Command (Windows):

npm run dev

Fix Lint:

npm run lint

5.Payment

  • service done, no need to progress

6.OCR

  • Stack: Python, Tesseract, OpenCV
  • Optical Character Recognition
  • Extract information from NID
    Run command (Windows):
python -u main.py

7.Govt_mock

  • Stack: Python, Flask, MySQL
  • Mock server for government services
  • NID verification

Run Command (Windows):

python -m uvicorn app:app --reload --port 4100

Fix Lint:

python -m autopep8 --in-place --aggressive --aggressive app.py

Test command:

python -m flake8 app.py

8. Authentication

  • Stack: FastAPI, MySQL, AWS
  • Signup and profile registration
  • login and logout token generation and expiration
  • token check and authentication
  • get data for profile
    with docker
docker-compose up --build

without docker (Windows)

python -m uvicorn app:app --reload --port 5600

Fix Lint:

python -m autopep8 --in-place --aggressive --aggressive app.py

Test command:

python -m flake8 app.py

Target Features

Total:34
Done: 25
In progress: 04
Not started: 05

Profile:

  • can create their profile and see their profile Done
  • user has to send a request Done
  • upload their images Done
  • information restriction Done
  • user can see other profiles Done

Profile Verification:

  • NID upload for both male/female Done
  • Information extraction from NID using OCR Done
  • Account approval upon NID Verification Done
  • Marriage/Divorce Certificate for Male users Done
  • Divorce certificate form Female users Done

Search System:

  • Profile sorting based on tags (educational qualification, heights, age, location, Married/Divorced) Done
  • Customized profile searching Done
  • Profile suggestion based on tags (location, age, likes/preferences) Done
  • Boost Profile matching upon search depending on payment status Not started
  • Favourite lists In progress

Blogs and other features:

  • relationship based therapy blogs and tips Done
  • online law support Done
  • instant security on meetup Not started
  • report a problem Done

Optical Character Recognition:

  • Extract information from NID Done
  • Extract information from Marriage/Divorce Certificate In progress
  • Extract information from Driving License Not started

Payment service:

  • SSLCommerz integration Done
  • encrypted form submission
  • payment history In progress
  • profile boosting and third party advertisements Not started
  • advertisement removal upon payment Not started

Authentication:

  • Signup and profile registration Done

  • login and logout token generation and expiration Done

  • token check and authentication Done

  • get data for profile Done Revisions:

  • Complete check of searching. Done

  • Implement payment frontend form. Done

  • ToC, Privacy Policy, About, Support pages. In progress

Error Handling

  • All data get api not working in government mock server In progress
  • Need to remove detils from government mock server Done
  • Need to add more data in government mock server for testing Done