Swaasthya is a comprehensive healthcare management platform designed to improve the efficiency of hospitals. It provides solutions for managing patient flow, bed availability, patient admissions, and medical inventory in real-time, with future expansions planned for enhanced data streaming and real-time analytics.
- Features
- Project Architecture
- Technology Stack
- Installation
- Running the Application
- Upcoming Features
- Patient Flow Management: Optimizes appointment scheduling and reduces wait times.
- Real-Time Bed Tracking: Monitors bed availability across departments.
- Smart Inventory Management: Tracks and updates consumable stock levels.
- Emergency Preparedness Dashboard: Displays real-time updates on patient loads, available resources, and emergency protocols.
- 2-Factor Authentication: Secure login with OTP verification after multiple attempts.
- Multilingual Support: Supports multiple languages for diverse hospital environments.
- Real-Time Notifications: Alerts for bed availability, appointment reminders, and emergencies.
- Offline Functionality: Operates in low-bandwidth environments, syncing data when connectivity is restored.
Swaasthya follows a scalable microservices architecture, ensuring efficient handling of healthcare operations.
- Backend: Golang manages the core services and APIs.
- Frontend: React.js provides a responsive user interface for hospital staff and administrators.
- Data Storage: PostgreSQL stores patient data, inventory levels, and appointment details.
- OTP & Notification Services: Redis is used for caching, OTP generation, and real-time notifications.
- Authentication: User login, session management, and two-factor authentication (2FA).
- OPD Management: Manages patient appointments and OPD scheduling.
- Bed Management: Real-time tracking of bed availability and patient admissions.
- Inventory Management: Tracks and manages hospital consumables and medicines.
- Emergency Dashboard: Provides real-time monitoring of emergency situations and resources.
- Backend: Golang
- Frontend: React.js
- Database: PostgreSQL
- Cache & OTP: Redis
- Real-Time Notifications: Redis
Note: Kafka will be integrated in the future for real-time data streaming and enhanced event processing.
Make sure you have the following installed:
- Go (v1.18+)
- Node.js (v14+)
- PostgreSQL
- Redis
-
Clone the Repository
git clone https://github.com/adityjoshi/Swaasthya.git cd Swaasthya
-
Backend Setup
- Navigate to the backend folder:
cd backend
- Install dependencies:
go mod tidy
- Set up your
.env
file with the necessary configurations (PostgreSQL, Redis):
cp .env.example .env
- Run the database migrations:
go run migrations/migrate.go
- Start the backend server:
go run main.go
Backend server will run at
http://localhost:2426
. -
Frontend Setup
- Navigate to the frontend directory:
cd ../frontend
- Install dependencies:
npm install
- Start the React application:
npm start
Frontend will run at
http://localhost:3000
.
Ensure both backend and frontend services are running:
- Backend:
http://localhost:2426
- Frontend:
http://localhost:3000
Make sure PostgreSQL and Redis are running before starting the backend service.
- Kafka Integration: In the future, Apache Kafka will be integrated to handle real-time data streaming, notifications, and event-driven architecture. This will improve scalability, analytics, and real-time reporting within the system.