A modern React-based frontend for the HarakaCare healthcare triage and facility management system.
- Step-by-step symptom assessment with intuitive UI
- Conditional logic for dynamic field display
- Red flag symptom detection with emergency alerts
- Comprehensive validation and error handling
- Mobile-responsive design for accessibility
- Real-time case monitoring with live updates
- Risk level categorization (High/Medium/Low)
- Case management (Confirm/Reject/Acknowledge)
- Advanced filtering and search capabilities
- Detailed case views with full patient information
- React 18 - Modern UI framework
- Tailwind CSS - Utility-first styling
- React Router - Navigation and routing
- Axios - HTTP client for API calls
- Lucide React - Beautiful icons
- Node.js 16+
- npm or yarn
-
Install dependencies:
npm install
-
Set up environment variables: Create a
.envfile in the frontend directory:REACT_APP_API_URL=http://127.0.0.1:8000/api -
Start the development server:
npm start
-
Open your browser: Navigate to
http://localhost:3000
frontend/
├── public/
│ └── index.html
├── src/
│ ├── components/
│ │ ├── Header.js # Navigation header
│ │ ├── PatientTriage.js # Patient assessment form
│ │ └── FacilityDashboard.js # Facility management dashboard
│ ├── services/
│ │ └── api.js # API service layer
│ ├── App.js # Main application component
│ ├── index.js # Application entry point
│ └── index.css # Global styles
├── package.json
├── tailwind.config.js
└── README.md
- Basic Information - Age, sex, location
- Symptom Reporting - Primary and secondary symptoms
- Symptom Details - Severity, duration, pattern
- Health History - Chronic conditions, medications, allergies
- Consent & Confirmation - Review and submit
- Statistics Overview - Total cases, risk distribution
- Case Management - Filter, search, and manage cases
- Real-time Updates - Live case status changes
- Detailed Views - Comprehensive patient information
The frontend is designed to integrate with the Django backend through REST APIs:
POST /api/triage/- Submit triage assessmentGET /api/triage/{id}/- Get case statusGET /api/patients/{token}/history/- Patient history
GET /api/facilities/cases/- Get facility casesPOST /api/facilities/cases/{id}/confirm/- Confirm casePOST /api/facilities/cases/{id}/reject/- Reject caseGET /api/facilities/stats/- Facility statistics
- Accessibility First - WCAG compliant design
- Mobile Responsive - Works on all device sizes
- Intuitive UX - Clear navigation and user flows
- Real-time Feedback - Immediate validation and updates
- Professional Healthcare UI - Clean, trustworthy interface
npm run buildnpm testThe project uses ESLint for code consistency. Run:
npm run lint- Follow the existing code style and patterns
- Ensure responsive design for all new components
- Add proper error handling and loading states
- Test with mock data before API integration
- Maintain accessibility standards
bugema University