A modern web application for hospital-based malaria detection and patient management. Built with React, Vite, Supabase, and TailwindCSS.
🔗 Live Demo: https://malaria-detection-system.vercel.app/
- Role-based access control (Doctor, Patient, Admin)
- Supabase JWT authentication for doctors and admins
- Patient login via medical record number and date of birth
- Secure session management
- Patient management and statistics
- Upload and manage test results
- Upload and share PDF reports with patients
- View analytics and trends
- Profile and settings management
- View posted test results
- Access and download medical reports
- Track appointments
- Manage personal profile
- User management (doctors, patients, admins)
- System analytics and monitoring
- Activity logs and alerts
- Responsive design (mobile, tablet, desktop)
- Dark/light mode theme switching
- PDF report generation with jsPDF
- Supabase PostgreSQL database
- Secure file storage for images and PDFs
- Interactive data visualization with Recharts
- React 19.2.0 - UI framework
- Vite 7.2.2 - Build tool
- TailwindCSS 3.4.18 - CSS framework
- React Router 7.9.6 - Routing
- Recharts 3.4.1 - Data visualization
- jsPDF 3.0.3 - PDF generation
- Supabase - Backend and database
- PostgreSQL - Database
- Supabase Storage - File storage
src/
├── components/ # Reusable UI components
├── contexts/ # Authentication and theme contexts
├── pages/ # Page components
│ ├── admin/ # Admin pages
│ ├── doctor/ # Doctor pages (patients, reports, test results)
│ └── patient/ # Patient pages (my results, my reports)
├── services/ # API services and business logic
├── utils/ # Utility functions (PDF generation)
└── App.jsx # Main application
- Node.js 18+ and npm
- Supabase account (free tier available at supabase.com)
git clone https://github.com/Jayant-1/malaria-detection-system.git
cd malaria-detection-system-webnpm installCreate a .env file in the root directory:
VITE_SUPABASE_URL=your_supabase_project_url
VITE_SUPABASE_ANON_KEY=your_supabase_anon_keyGetting Supabase Credentials:
- Create a project at supabase.com
- Go to Project Settings → API
- Copy the Project URL and anon/public key
Create the following tables in Supabase SQL Editor:
patients- Store patient informationtest_results- Store test results with posting statusreports- Store PDF report metadata
Create storage buckets:
malaria-images- For test imagesreports- For PDF reports
npm run devNavigate to http://localhost:5173
npm run dev # Start development server
npm run build # Build for production
npm run preview # Preview production build
npm run lint # Run ESLint- Login with Supabase credentials
- Manage patients and view statistics
- Upload and post test results to patients
- Upload and share PDF reports
- View analytics and trends
- Login with Medical Record Number + Date of Birth
- View posted test results
- Download medical reports
- Track appointments
- Manage users (doctors, patients, admins)
- Monitor system activity and analytics
- Review system logs and alerts
- JWT-based authentication via Supabase
- Row-level security (RLS) policies
- Role-based access control
- Secure file storage with access policies
- Environment variable protection
This project is licensed under the MIT License.
Jayant Potdar
- 📧 Email: [email protected]
- 📱 Phone: +91 878 864 0172
- 💼 LinkedIn: Jayant Potdar
- 🐙 GitHub: Jayant-1
- 🐦 Twitter: @Jayantpotdar_
- 📍 Location: Poona Hospital & Research Centre, Pune
Project Links
- 🌐 Live Demo: https://malaria-detection-system.vercel.app/
- 📦 Repository: malaria-detection-system
- 🐛 Issues: Report Issues
Malaria Detection System - Hospital Patient Management Platform