Skip to content

Latest commit

 

History

History
134 lines (101 loc) · 5.03 KB

README.md

File metadata and controls

134 lines (101 loc) · 5.03 KB

HealthBot 🏥

Health Management System for the VITC Health Centre
Automated Queue | Digitalized Prescriptions | Real-time Statistics

Contributors Forks Stargazers Issues

Table Of Contents

About The Project

HealthBot is an application made to streamline the campus health centre operations and improve the quality of life of students. This was our Submission for the Summer Solve-A-Thon Hackathon conducted at VITC.

Features:

  • Automated queue for appointments to reduce crowding and save time
  • Digitalized prescriptions to reduce paper wastage and make it easier to search for past prescriptions
  • Real-time statistics of current cases in campus and visual graph of the increasing frequency of cases day by day to predict and prevent outbreaks

There are 2 UIs to this application. One for the students and one for the health centre. The students interact with a Telegram bot, whereas the health centre officials interact with a web dashboard.

Students' UI:

  • Schedule doctor's appointment
  • Call ambulance
  • Schedule counsellor's appointment
  • Get food delivered to room
  • Notifications for appointments and prescriptions

Health Centre Dashboard:

  • Manage appointments queue
  • Enter prescriptions for patients
  • Search patient logs for consultation history
  • Monitor real-time statistics of current cases in campus and get a visual graph of the increasing frequency of cases day by day
  • Appropriate notifications to authorities

Built With

Getting Started

To get the project up and running locally on your machine, follow these simple steps:

Prerequisites

  1. Create a database on MongoDB and obtain the connection URI.
  2. Create 2 telegram bots (One for student UI and one for notifications) using BotFather and obtain their API tokens.

Installation

  1. Clone the repo
git clone https://github.com/robinroy03/healthbot.git
cd healthbot
  1. Create a virtual environment and install dependencies
python3 -m venv venv
source ./venv/bin/activate
pip install -r requirements.txt
  1. Create a .env file in the root directory with the following variables
ATLAS_URI = <your-MongoDB-connection-URI>
DB_NAME = <your-database-name>
BOT_TOKEN = <api-token-for-your-student-ui-bot>
NOTIF_BOT_TOKEN = <your-api-token-for-your-notifications-bot>
  1. Start the bot
python3 bot.py
  1. Launch the dashboard
streamlit run dashboard.py
  1. You are all set! You can now begin messaging the bot on telegram.

Showcase

Image Health Centre Queue

Image Patient's Medical History Search

Image Real-time Statistics

Roadmap

  • Get a logo
  • Add contributing instructions, CONTRIBUTING.md and CODE_OF_CONDUCT.md
  • Clean the code. It was a quick hack, so the code is a bit messy. A lot of edge cases are not yet handled.
  • Combine the two telegram bots into one. Having a separate bot for notifications is not necessary.
  • Make REST API endpoints for the dashboard to interact with instead of calling functions from db.py directly.
  • Set up unit tests.
  • Use an actual ML model to predict outbreaks using data from the health centre.
  • Move to a better frontend framework (possibly Reflex?)
  • Deploy the app.

Authors

Was an overall fun cook and the vibes were immaculate! Finished as 3rd runners up and were awarded a cash prize :)