Skip to content

Latest commit

 

History

History
52 lines (34 loc) · 1.58 KB

File metadata and controls

52 lines (34 loc) · 1.58 KB

Bunk Mate - (Backend)

This repository contains the source code and documentation for the bunkmate backend.

Tech Stack

  • Django Rest Framework: For serving the main API.
  • Celery: Celery is used for distributed task processing, here it is used for the resource intensive process of creating hundreds of sessions for a certain timetable.
  • Redis: For message brokering between djano and celery.
  • PostgreSQL: Database to store user data.

Getting Started

The recommended way to setup the bunkmate backend is to use the docker compose file, follow these steps:

  1. Clone the repository:

    git clone https://github.com/Bunk-Mate/backend
  2. Set up env:

    cp .env.sample .env
  3. Run the docker compose file (this will setup everything for you, including celery, postgres and redis):

    docker compose up

The backend server will be up and running at http://localhost:8000/.

Using Bruno Collections

This repository has a bruno collection checked in under /bruno which you can open using the app for testing out the different API endpoints. Start from the register/login requests to populate the auth-token variable which is required for the other requests.

Roadmap

  • Implement better authentication
  • Set up sentry
  • Refactor codebase
  • Set up logging and remove print statements
  • Implement ranked bunking
  • Test out timetable autodetection from images

License

This project is licensed under the MIT License.