Skip to content

Romez1990/highm-server

Repository files navigation

HighM server

Backend for HighM project.

HighM is web application for college to organize math lessons.

Getting started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisites

What things you need to have globally installed:

  • Python 3.8 or higher
  • Pipenv
  • PostgreSQL
  • libpq-dev (only for Linux)

Installing

Install project dependencies.

pipenv install

Run database migrations.

pipenv run python manage.py migrate

Copy .env.example to .env. Set DEBUG=False for production, specify server host, client url, database and email credentials.

cp .env.example .env

Or instead of .env file you can set environment variables.

Run development server.

pipenv run python manage.py runserver

To create a user you should add a row to auth_user table with email and add a row to account_emailaddress with corresponding email.

You can also login to Django REST Framework panel with username and password only in development mode

Automated testing

To run all the automated tests

pipenv run test

Unit tests

Unit tests test every module individually

pipenv run unit-test

Deploying

To run production server

pipenv run gunicorn highm_server.wsgi

Built With

  • Django - The web framework
  • Django REST Framework - Toolkit for building RESTful APIs
  • PostgreSQL - The open source relational database
  • NumPy - Library for matrices and high-level mathematical functions
  • SciPy - Library for scientific computing

About

RESTful API of web app for math exercising

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published