Skip to content
This repository has been archived by the owner on Feb 18, 2025. It is now read-only.
/ helpdesk-api Public archive

The API powering the Helpdesk solution built for TAPMI-BLR

Notifications You must be signed in to change notification settings

YCN-club/helpdesk-api

Repository files navigation

ycn.club helpdesk (api)

Release Badge Forks Badge

A complete end-to-end HelpDesk system for institutes; allowing both students and faculty to act as users while utilizing dynamic categories/subcategories, SLAs, assignees, etc. Build with Python using the Sanic Framework.

⚠️ Note: This repository has been archived and will no longer receive updates. For further information on the project's status and brand identity, please refer to the organization's README.

History

This project started off as a complete HelpDesk system specifically for the T.A. Pai Institute of Management, Bengaluru. Unfortunately, due to resource constraints and policy conflicts from the Manipal Academy of Higher Education, the student project was archived with the hard work of the team members left undeployed.

While we work towards more generic solutions that can be adopted by other communities, this repository has been transferred to YCN (our other project) and archived for documentation purposes. For more information on the state of the project, please refer to the organization's README.

Product Demo

Details about the UI and demo can be found in the Helpdesk Frontend repository.

Configuration

All core config. values of the HelpDesk system exist as enviroment variables, a sample ENV file can be found at .env-example.

Database Schema

The database schema for the HelpDesk system can be visualized using the following diagram:

Database Schema

Development

  1. Install the dependency manager:

    pip install poetry
  2. Install the dependencies:

    poetry install
  3. Configure the environment variables:

    cp .env-example .env
  4. Generate an RSA keypair:

    openssl genrsa -out private.pem 2048
    openssl rsa -in private.pem -pubout -out public.pem
  5. Run the development server:

     poetry run task server

The project is now ready for development!