A comprehensive healthcare management platform built with Django REST Framework and React. E-Hospitality provides a complete solution for managing patients, medical records, appointments, billing, and healthcare facilities.
- Patient Registration - Secure registration with comprehensive demographic information
- Medical History Management - Complete medical records tracking with diagnoses, medications, and allergies
- Appointment Booking - Easy-to-use appointment scheduling system
- Billing & Payments - Invoice management and payment processing
- Health Education Resources - Access to health tips and educational materials
- User Management - Manage administrators and their permissions
- Facility Management - Track and manage hospital facilities and resources
- Appointment Coordination - Oversee all appointments across the system
- Doctor Management - Add and manage medical staff profiles
- Analytics Dashboard - Real-time statistics and insights
- Patient Records - Complete access to patient information and history
- Medical Record Creation - Add diagnoses, prescriptions, and treatment plans
- Appointment Schedule - View and manage daily appointments
- E-Prescribing - Digital prescription management
- Responsive Design - Works perfectly on desktop, tablet, and mobile
- Animated Backgrounds - Engaging pulse animations and smooth transitions
- Modern Typography - Using Poppins and Playfair Display fonts
- Intuitive Navigation - Easy-to-use interface with clear visual hierarchy
- Django 4.2
- Django REST Framework
- PostgreSQL / SQLite
- Python 3.10+
- React 18.2
- React Router DOM
- Axios
- Bootstrap 5
- Custom CSS with animations
- Python 3.10 or higher
- Node.js 16 or higher
- PostgreSQL (for production) or SQLite (for development)
- Git
-
Clone the repository
git clone https://github.com/yourusername/e-hospitality-system.git cd e-hospitality-system/backend -
Create virtual environment
python -m venv venv # On Windows venv\Scripts\activate # On macOS/Linux source venv/bin/activate
-
Install dependencies
pip install -r requirements.txt
-
Configure environment variables
cp .env.example .env # Edit .env with your configuration -
Run migrations
python manage.py migrate
-
Create superuser
python manage.py createsuperuser
-
Start development server
python manage.py runserver
The API will be available at http://localhost:8000
the deployed backend : https://e-hospitality-system.onrender.com/api/
-
Navigate to frontend directory
cd ../frontend -
Install dependencies
npm install
-
Configure environment
cp .env.example .env # Edit .env if needed -
Start development server
npm start
The application will open at http://localhost:3000
-
Create a new Web Service on Render
- Connect your GitHub repository
- Select the
backenddirectory as the root - Environment: Python 3
- Build Command:
./build.sh - Start Command:
gunicorn ehospitality.wsgi:application
-
Add Environment Variables
DATABASE_URL=<your-postgresql-url> SECRET_KEY=<your-secret-key> DEBUG=False ALLOWED_HOSTS=.onrender.com CORS_ALLOWED_ORIGINS=<your-frontend-url> -
Create a PostgreSQL Database
- Add a PostgreSQL database on Render
- Copy the Internal Database URL
- Set it as DATABASE_URL in your web service
-
Create a new Static Site on Render
- Connect your GitHub repository
- Select the
frontenddirectory as the root - Build Command:
npm run build - Publish Directory:
build
-
Add Environment Variable
REACT_APP_API_URL=<your-backend-url>/api
GET /api/patients/- List all patientsPOST /api/patients/- Create new patientGET /api/patients/{id}/- Get patient detailsPUT /api/patients/{id}/- Update patientDELETE /api/patients/{id}/- Delete patientGET /api/patients/{id}/medical_history/- Get patient's medical historyGET /api/patients/{id}/appointments/- Get patient's appointmentsGET /api/patients/{id}/billings/- Get patient's billing records
GET /api/medical-history/- List all medical historiesPOST /api/medical-history/- Create medical recordGET /api/medical-history/{id}/- Get medical record detailsPUT /api/medical-history/{id}/- Update medical recordDELETE /api/medical-history/{id}/- Delete medical record
GET /api/appointments/- List all appointmentsPOST /api/appointments/- Create appointmentGET /api/appointments/{id}/- Get appointment detailsPUT /api/appointments/{id}/- Update appointmentPOST /api/appointments/{id}/update_status/- Update appointment status
GET /api/billing/- List all billingsPOST /api/billing/- Create billing recordPOST /api/billing/{id}/make_payment/- Process payment
GET /api/health-resources/- List all health resourcesGET /api/health-resources/categories/- Get resource categories
GET /api/administrators/- List all administratorsPOST /api/administrators/- Create administrator
GET /api/facilities/- List all facilitiesGET /api/facilities/statistics/- Get facility statisticsPOST /api/facilities/- Create facility
GET /api/doctors/- List all doctorsGET /api/doctors/specializations/- Get specializationsPOST /api/doctors/- Create doctor
e-hospitality-system/
โโโ backend/
โ โโโ ehospitality/
โ โ โโโ settings.py
โ โ โโโ urls.py
โ โ โโโ wsgi.py
โ โโโ hospital/
โ โ โโโ models.py
โ โ โโโ serializers.py
โ โ โโโ views.py
โ โ โโโ urls.py
โ โ โโโ admin.py
โ โโโ manage.py
โ โโโ requirements.txt
โ โโโ build.sh
โ โโโ .env.example
โโโ frontend/
โ โโโ public/
โ โ โโโ index.html
โ โโโ src/
โ โ โโโ components/
โ โ โ โโโ Home.js
โ โ โ โโโ PatientModule.js
โ โ โ โโโ AdminModule.js
โ โ โ โโโ DoctorModule.js
โ โ โโโ services/
โ โ โ โโโ api.js
โ โ โโโ App.js
โ โ โโโ App.css
โ โ โโโ index.js
โ โโโ package.json
โ โโโ .env.example
โโโ README.md
After creating a superuser, you can access:
- Admin Panel:
http://localhost:8000/admin - Username: (your created username)
- Password: (your created password)
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Andria Fraderick - Initial work
- Django REST Framework documentation
- React documentation
- Bootstrap for responsive design
- All contributors who helped with the project
For support, open an issue in the GitHub repository.
- Real-time notifications
- Video consultation integration
- Mobile app (React Native)
- AI-powered diagnosis assistance
- Pharmacy integration
- Laboratory results management
- Insurance claim processing
- Multi-language support
Made with โค๏ธ for better healthcare management