Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update README.md #9

Merged
merged 1 commit into from
Jul 19, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 7 additions & 36 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,10 @@ This repository contains the source code and documentation for the attendence tr

## Tech Stack

- **Django Rest Framework:** Built on the powerful Django framework for a robust and scalable backend.

- **Redis:** Utilizes Redis for message brokering between djano and celery.

- **Django Rest Framework:** For the building 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.

- **PostgreSQL:** A reliable and scalable database to store and manage data efficiently.
- **Redis:** For message brokering between djano and celery.
- **PostgreSQL:** Database to store user data.

## Getting Started

Expand Down Expand Up @@ -38,8 +35,10 @@ To get started with the Bunk Mate backend, follow these steps:
BROKERLOCATION=
SECRET_KEY=
```
* `CACHELOCATION` and `BROKERLOCATION` correspond to the urls of the redis databases
* This env file is used for a local development environment, for production include the environment variable `WEBSITE_HOSTNAME` which is set to the domain of the website.
* `CACHELOCATION` and `BROKERLOCATION` correspond to the urls of the redis databases.
* This env file is used for a local development environment, for production -
- Set the environment variable `WEBSITE_HOSTNAME` to the domain of the website.
- Load the above listed variables into the environment using platform specific methods.
3. Set up the database:

```bash
Expand All @@ -54,34 +53,6 @@ To get started with the Bunk Mate backend, follow these steps:

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

## API Endpoints

### User Management

- **POST /register:** Register a new user.
- **POST /login:** User login, returns the token of the user.
- **POST /logout:** User logout.

### Model Management

- **POST /collection:** Create a new collection.
- **GET /collections:** Get a list of all the collections.
- **POST /collection_selector:** Select a particular collection to copy to the user.
- **GET /courses:** Get a list of courses that the user has.
- **POST /courses:** Create a new course.
- **GET /course_schedules/{course_id}:** Gets a list of schedules under a particular course.
- **POST /course_schedules/{course_id}:** Create a schedule for a specific course.
- **GET /schedules:** Get a list of all the schedules that the user has.
- **GET /schedule/{pk}:** Get details of a specific schedule.
- **GET /session/{pk}:** Get details of a specific session.
- **PATCH /session/{pk}:** Update details of a specific session.
- **POST /schedule_selector:** Select a schedule for a particular date.

### Query Endpoints

- **POST /datequery:** Query which all session are there today.
- **POST /statquery:** Get statistics about every course.

## License

This project is licensed under the [MIT License](https://opensource.org/license/mit).
Expand Down