Healix
Healix is a python based hospital management project, which leverages customtkinter GUI and PostgreSQL and plpgSQL functions and procedures to provide CRUD operations. An Object Oriented approach has been followed throughout the python code for the GUI.
Features
- Manage records of patients, doctors and other staff
- Assign doctors to patients
- Interactive UI to manipulate records
- Robust PostgreSQL architecture that ensures data integrity
- Data filtering built into the code to ensure correctness
- GUI based actions for ease of use, implemented via Object Oriented Programming principles for organised and smooth functioning
Prerequisites
Before setting up Healix, ensure you have the following installed:
- Python 3.10
- PostgreSQL 12 or higher
pip(Python package manager)
Project Setup:
- Clone the Repository::
git clone https://github.com/VanshajR/Healix.git
cd Healix
Setup a PostgreSQL database: Run the statements provided in
healix_statements.sqlin the databaseSetup the environment file: Create a .env file in the project file with the following content:
DATABASE_URL=<Your PostgreSQL URI>
ADMIN_ID=<Admin Account ID>
ADMIN_PASSWORD=<Admin Account Password>
- Install dependancies:
pip install -r requirements.txt
- Run the files:
Run the
admin.pyfile to enter some records for patients, doctors and staff:
python admin.py
This program executes the GUI for manipulation of all records and assignment of doctors.
Run the main.py file to login as a patient or a doctor:
python main.py
This program executes the GUI for the login window.
Project Structure:
Healix/
├── admin.py # Admin functionalities
├── assigndoctor.py # Assign doctors to patients
├── deletedata.py # Remove records from the database
├── docandstaffregistration.py # Doctor and staff registration
├── guiobjects.py # GUI components and utilities
├── healix_statements.sql # Database setup SQL script
├── main.py # Entry point for the application
├── patientregistration.py # Patient registration logic
├── plsql statements # Additional PL/pgSQL scripts
├── updatedetails.py # Update existing records
├── viewassignments.py # View doctor-patient assignments
└── viewdetails.py # View patient and staff details
License
This project is licensed under the BSD 3-Clause License. See the LICENSE file for details.
Built With
- plpgsql
- python
Log in or sign up for Devpost to join the conversation.