Skip to content

Latest commit

 

History

History
145 lines (105 loc) · 5.36 KB

README.md

File metadata and controls

145 lines (105 loc) · 5.36 KB

Quizreo_backend

Backend application for quizreo application : API and services are stored there

question mark

Description

This application is the backend of the quizreo application. It is a REST API that provides services to the quizreo application. It is written in python with fastAPI framework.

Technologies

Architecture

The application is divided into 6 parts:

*      [app](app/): contains the main application
*           [auth](app/auth/): contains the authentication services
*           [core](app/core/): contains the core services
*           [database](app/db/): contains the database services
*           [endpoints](app/endpoints/): contains the endpoints of the API
*           [models](app/models/): contains the models of the database
*           [routes](app/routes/): contains the routes of the API
*      __init__.py
*      dependencies.py
*      main.py
*      test_main.py

Services

Services provided by the API:

  • Authentication : login, logout, register, reset password, change password
  • User management : get user, update user, delete user
  • Quiz management : create quiz, get quiz, update quiz, delete quiz
  • Survey management : create survey, get survey, update survey, delete survey
  • Answer management : create answer, get answer, update answer, delete answer
  • Party management : create party, get party, update party, delete party
  • Trial management : create trial, get trial, update trial, delete trial

API

Authentication

User

Quiz

Survey

Answer

Party

Trial

Usage

If you want to use this project as a template, you can clone it and start working on it. You can also use it as a reference to learn how to build a FastAPI project. If you want to see a demo of the various features follow these steps:

  1. Clone the project
  •  git clone https://github.com/Pericles001/Quizreo_backend.git
    
  •  cd Quizreo_backend
    
  1. Create a virtual environment
  •  python3 -m venv venv
    
  •  source venv/bin/activate
    
  1. Install the requirements
  • pip install -r requirements.txt
    
  • pip install -r requirements-dev.txt
    
  1. Run the project
  • uvicorn app.main:app --reload
    
  1. Go to the Swagger UI and try the endpoints
  2. Go to the ReDoc UI and try the endpoints

Contributing

If you wish to contribute to the application , you can fork the project and submit a pull request. If you find any bugs or have any suggestions, you can open an issue.

Authors