Skip to content

A question-answer platform where users can ask questions and get answers from other users. Contains added functionalities for finding similar questions and weeding out spam answers.

Notifications You must be signed in to change notification settings

followCode/Q_AND_A

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Q & A Site With ML

An attempt to clone Quora's similar questions ML capability. A question-answer platform where users can ask questions and get answers from other users.

Screenshots

Similar Questions shown when adding a new question. (This section comes under dashboard and requires a user login)

Similar Questions

Login as a user

Login Page

Register an account

Registration Page

Dashboard that is visible after a successful login

Dashboard

Question format expectations when asking a question

Question Format

Viewing an already asked question

Already asked question

Developer Setup

Requirements

  • Python 3.7.9
  • Node v14.16.0
  • Docker & docker-compose
  • vocab file. Download here. Then place it within Backend/model_api/model/

Pre-setup

Setup the basic backend db

  • Go to Backend directory and run docker-compose

    docker-compose -f docker-compose.dev.yaml up -d

Backend - Common

  • Move to Backend directory

  • Add virtual environment using

    python -m venv env

  • Activate virtual environment how-to-activate - this depends on OS

  • Install project dependencies

    pip install -r requirements.txt

  • Create a .env file at the root of the Backend folder using the contents of .env.sample file.

Backend - ML API (Flask)

  • Move to Backend\model_api\ directory

  • (Optional) To add hot-reloading, Add environment variable by running

    export FLASK_DEBUG=1

    export FLASK_APP=app.py

  • Run the app

    python app.py

Backend - Django

  • Move to Backend directory

  • Run migrations

    python manage.py migrate

  • Start the app

    python manage.py runserver

Frontend

  • Move to frontend directory

  • Install node dependencies

    npm -i

  • Start the node application

    npm start

About

A question-answer platform where users can ask questions and get answers from other users. Contains added functionalities for finding similar questions and weeding out spam answers.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published