A comprehensive healthcare management platform with 28+ fully functional modules providing inclusive, patient-centered care with robust mental health support, advanced trend analysis, AI insights, and complete file management. Built with React, TypeScript, Vite, and Supabase.
π GitHub Repository: https://github.com/Nili-L/HealthCompanion
HealthCompanion is a full-featured healthcare portal supporting both patient and provider workflows. The platform emphasizes mental health tracking, evidence-based assessments, inclusive care practices, intelligent data analytics with AI-powered insights, community support, and comprehensive health journey visualization.
- Patient Profile - Demographics, providers, emergency contacts, kupat holim
- Health History - Mental, physical, familial, genetic history tracking
- Period Tracking β¨ NEW - Menstrual cycle monitoring with predictions
- Patient Journal β¨ NEW - Private reflections and knowledge base
- Medical Documents - File upload/download with Supabase Storage
- Medical Imaging β¨ NEW - X-rays, MRI, CT scans, ultrasounds
- OCR Scanning β¨ NEW - Extract text from medical documents
- Media Library β¨ NEW - Art, music, photos, therapeutic content
- Medication Tracking - Schedules, adherence, refill requests
- Symptom Tracking - Daily logs with AI-powered trend analysis
- Lab Results & Vitals - Charts with week-over-week trends
- Appointment Scheduling - Calendar-based booking system
- Mental Health Questionnaires - PHQ-9, GAD-7, PCL-5, ASRS, PSS-10, Y-BOCS with score trends
- Secure Messages - Patient-provider and patient-patient messaging
- Community Platform β¨ NEW - Peer support, forums, anonymous posting
- Care Team - Healthcare provider directory
- Follow-Up Plans β¨ NEW - Post-appointment action tracking
- Insurance & Billing - Policies, claims, payment history
- Financial Management β¨ NEW - Receipts, refunds, authorizations, permits
- Health Goals - Goal setting with progress tracking
- To-Do Lists β¨ NEW - Manual and OCR-generated tasks
- Health Insights β¨ NEW - AI-generated reports with comparisons
- Health Timeline β¨ NEW - 3D visualization of health journey
- Mind Maps β¨ NEW - Visual health factor connections
- Request Templates β¨ NEW - Pre-filled forms for common requests
- Support Tickets β¨ NEW - Issue tracking system
- Help & FAQs β¨ NEW - Documentation and tutorials
- Search & Export - Integrated across multiple modules
- Period Tracking: Cycle monitoring, symptom tracking, flow intensity, predictions
- Medical Imaging: Comprehensive imaging study management (X-Ray, MRI, CT, Ultrasound, PET, Mammogram)
- OCR Scanning: Automatic text extraction from medical documents and prescriptions
- Patient Journal: Private reflections, mood tracking, searchable entries with tags
- Media Library: Store art, music, photos, and therapeutic content with categorization
- To-Do Lists: Task management with manual, OCR-extracted, and system-generated tasks
- Mind Maps: Node-based visualization of health connections and relationships
- Community Platform: Social support network with forums, anonymous posting, likes, and comments
- Follow-Up Plans: Post-appointment care tracking with due dates and task management
- Financial Management: Complete system for receipts, refunds, payments, authorizations, and permits
- Support Tickets: Priority-based issue tracking with categories and status management
- Request Templates: Pre-filled forms for records, referrals, prescriptions, appointments, and authorizations
- Health Insights: AI-generated reports with side-by-side trend comparisons
- Health Timeline: Interactive 3D visualization of health journey over time
- Help & FAQs: Comprehensive documentation, searchable FAQs, video tutorials
- Week-over-week comparison with AI-powered pattern recognition
- Visual trend indicators (TrendingUp/Down) with color-coded alerts
- Correlation detection (e.g., "Higher stress correlates with poorer sleep")
- Multi-metric analysis tracking anxiety, depression, stress, pain, sleep quality
- Smart insights: "Anxiety improved 25%" or "Pattern: stress affects sleep"
- Latest score prominently displayed on questionnaire cards
- Percentage change between assessments with visual arrows
- Progress detection: "Your symptoms have improved by 5 points since your last assessment"
- Historical comparison in assessment history view
- Summary Stats Cards showing latest values for key vitals
- Week-over-week trend badges (improving/declining/stable)
- Vital sign card comparisons (BP, glucose, heart rate) vs previous readings
- Lab result trend tracking comparing current vs previous tests
- Color-coded indicators: green (good), red (concerning), gray (stable)
- Inverse logic handling (lower BP = better, higher O2 = better)
- Real file upload (not just references) with 10MB limit
- Supported formats: PDF, Word docs, images (JPG, PNG, GIF), text files
- Secure signed URL downloads (60-second expiration)
- Automatic file deletion when documents are removed
- File metadata tracking (name, size, type, storage path)
- Upload progress indicators and file preview
- See
SUPABASE_STORAGE_SETUP.mdfor configuration details
- Upload art, music, photos, videos, and documents
- Category-based organization
- File type detection and validation
- Download and sharing capabilities
Track symptoms across multiple categories:
- Depression symptoms (13 specific items)
- Anxiety symptoms (15 specific items)
- Panic attack tracking (13 symptoms)
- PTSD symptoms (12 items)
- Complex PTSD symptoms (10 items)
- Dissociation scale
- EDS/Hypermobility symptoms (15 items + 15 joint locations)
- Migraine tracking with phases, aura symptoms
- Hormonal tracking for men and women
- Cross-cutting: pain scale, fatigue, sleep quality, stress, mood, triggers
- Automatic pattern detection across all metrics
- Color-coded insights (green = positive, amber = warning, blue = info)
- Examples:
- β "Anxiety levels improved by 25% compared to last week. Keep up the great work!"
β οΈ "Depression symptoms worsened by 30%. Please consult with your provider."- βΉοΈ "Pattern detected: Higher stress correlates with poorer sleep"
- π "Excellent progress! 3 key metrics are improving this week"
- Correlation analysis between metrics
- PHQ-9 (Depression): 9-item questionnaire with severity classification
- GAD-7 (Anxiety): 7-item scale with clinical cutoffs
- PCL-5 (PTSD): 20-item assessment for trauma symptoms
- ASRS (ADHD): Adult ADHD Self-Report Scale with Part A & B
- PSS-10 (Stress): Perceived Stress Scale
- Y-BOCS (OCD): Yale-Brown Obsessive Compulsive Scale
Features:
- Interactive questionnaires with progress tracking
- Score calculation with severity interpretation
- Historical trend analysis comparing assessments over time
- Visual indicators showing improvement/decline
- Detailed results view with item-level breakdown
- Export functionality for sharing with providers
- Forum-style discussions with categories
- Anonymous posting option for privacy
- Post likes, comments, and sharing
- Active member statistics
- Safe, supportive peer environment
- Patient-to-provider messaging
- Patient-to-patient communication
- Threaded conversations
- Read receipts and urgent flags
- Attachment support
- Manual task entry
- OCR-extracted tasks from documents
- System-generated tasks from appointments
- Priority levels and due dates
- Completion tracking
- Node-based visualization system
- Create connections between health factors
- Drag-and-drop interface
- Export and share functionality
Pre-filled forms for:
- Medical records requests
- Specialist referrals
- Prescription refills
- Appointment requests
- Insurance authorizations
- Lab results requests
- Receipts: Download and organize medical receipts
- Refunds: Track refund requests and status
- Payments: Payment history with status badges
- Authorizations: Pre-authorization tracking for procedures
- Permits: Medical parking permits, equipment permits
- AI-generated trend analysis
- Side-by-side metric comparisons
- Mental health trends (anxiety, stress, sleep)
- Physical health trends (BP, pain, energy)
- Comprehensive 30-day health summary
- PDF export and email to provider
- Interactive 3D visualization
- Scroll through health history
- Key events timeline
- Trend summaries by period
- Week/month/year/all-time views
- React 18 with TypeScript
- Vite for fast build tooling
- Tailwind CSS for styling
- shadcn/ui component library (50+ Radix UI components)
- Recharts for data visualization
- Lucide React for icons
- Supabase for authentication and storage
- Hono server framework on Deno
- Edge Functions for serverless API
- KV Store for data persistence
- File Upload: Supabase Storage with signed URLs
- Authentication: JWT-based with Supabase Auth
- Real-time Updates: Optimistic UI updates
- Responsive Design: Mobile-first approach
- Node.js 18+ and npm
- Supabase account (free tier works)
# Clone the repository
git clone https://github.com/Nili-L/HealthCompanion.git
cd HealthCompanion
# Install dependencies
npm install
# Start development server
npm run devThe app will open at http://localhost:3000
Demo accounts start with empty profiles for users to fill in their own information.
-
Patient:
patient@demo.com/demo123- Empty profile ready to be completed
- No pre-filled data - start fresh
-
Provider:
provider@demo.com/demo123
Note: Demo accounts provide a clean slate for testing the application with your own data.
POST /make-server-50d6a062/signup- Create new accountPOST /make-server-50d6a062/login- User loginGET /make-server-50d6a062/user- Get user info
GET/PUT /make-server-50d6a062/profile- Patient profileGET/PUT /make-server-50d6a062/health-history- Health history
GET/POST/PUT/DELETE /make-server-50d6a062/medicationsGET/POST/PUT/DELETE /make-server-50d6a062/providersGET/POST/PUT/DELETE /make-server-50d6a062/emergency-contactsGET/POST/PUT/DELETE /make-server-50d6a062/kupat-holim
GET/POST/DELETE /make-server-50d6a062/documentsPOST /make-server-50d6a062/documents/upload- File uploadGET /make-server-50d6a062/documents/:id/download- Signed URLGET/POST /make-server-50d6a062/imaging- Medical imaging
GET/POST/PUT/DELETE /make-server-50d6a062/appointmentsGET/POST /make-server-50d6a062/lab-resultsGET/POST /make-server-50d6a062/vitalsGET/POST/DELETE /make-server-50d6a062/symptoms
GET/POST/PUT/DELETE /make-server-50d6a062/questionnairesGET/POST /make-server-50d6a062/questionnaire-responsesGET/PUT /make-server-50d6a062/assigned-questionnaires
GET/POST /make-server-50d6a062/messagesGET/POST/DELETE /make-server-50d6a062/care-team
GET/PUT /make-server-50d6a062/insuranceGET/POST/PUT/DELETE /make-server-50d6a062/goalsGET/POST /make-server-50d6a062/follow-up-plans
GET/POST /make-server-50d6a062/periods- Period trackingGET/POST/DELETE /make-server-50d6a062/media- Media libraryGET/POST/DELETE /make-server-50d6a062/journal- Patient journalGET/POST/PUT /make-server-50d6a062/todos- To-do listsGET/POST /make-server-50d6a062/tickets- Support ticketsGET/POST /make-server-50d6a062/community/posts- Community postsPOST /make-server-50d6a062/community/posts/:id/like- Like post
src/
βββ components/
β βββ ui/ # shadcn/ui components (50+)
β βββ PatientProfile.tsx # Profile management
β βββ HealthHistory.tsx # Health intake
β βββ MedicationManager.tsx # Medication tracking
β βββ MedicalDocuments.tsx # Document management
β βββ AppointmentScheduling.tsx # Appointments
β βββ LabResultsVitals.tsx # Labs & vitals with trends
β βββ SymptomTracking.tsx # Symptom tracking with AI
β βββ SecureMessages.tsx # Messaging system
β βββ CareTeam.tsx # Provider directory
β βββ InsuranceBilling.tsx # Insurance & billing
β βββ HealthGoals.tsx # Goal tracking
β βββ MentalHealthQuestionnaires.tsx # Assessments
β βββ PeriodTracking.tsx # β¨ NEW
β βββ MediaLibrary.tsx # β¨ NEW
β βββ OCRScanning.tsx # β¨ NEW
β βββ CommunityPlatform.tsx # β¨ NEW
β βββ PatientJournal.tsx # β¨ NEW
β βββ TodoLists.tsx # β¨ NEW
β βββ InsightReports.tsx # β¨ NEW
β βββ FollowUpPlans.tsx # β¨ NEW
β βββ FinancialManagement.tsx # β¨ NEW
β βββ TicketSystem.tsx # β¨ NEW
β βββ TimelineVisualization.tsx # β¨ NEW
β βββ RequestTemplates.tsx # β¨ NEW
β βββ MindMaps.tsx # β¨ NEW
β βββ HelpManual.tsx # β¨ NEW
β βββ MedicalImaging.tsx # β¨ NEW
β βββ HealthcareDashboard.tsx # Main dashboard
βββ supabase/
β βββ functions/
β βββ server/
β βββ index.tsx # API server (440+ endpoints)
β βββ kv_store.tsx # Data persistence
βββ utils/
βββ supabase/
βββ client.tsx # Supabase client
βββ info.tsx # Configuration
- HIPAA-Aware Design: Secure data handling practices
- Authentication: JWT tokens with Supabase Auth
- Private Storage: RLS policies on Supabase Storage
- Signed URLs: Time-limited file access (60s)
- User Isolation: Data segregated by user ID
- Anonymous Options: Community posts can be anonymous
- Chosen Name & Pronouns: Respect patient identity
- Gender-Affirming Care: Specialized tracking
- Customizable Forms: Flexible intake questions
- Accessibility: WCAG 2.1 considerations
- Cultural Sensitivity: Inclusive language throughout
# Development
npm run dev
# Production build
npm run build
# Preview production build
npm run previewBuild output: build/ directory
- Bundle size: ~1,280 KB (334 KB gzipped)
- 2,428 modules transformed
- Build time: ~22 seconds
- Implement dynamic imports for code splitting
- Add unit tests for components
- Provider-specific module variations
- Enhanced data visualization
- Mobile app (React Native)
- Virus scanning for uploaded files
- PDF preview in browser
- Image thumbnail generation
- Batch file upload
- File versioning
- Encrypted storage
- OCR for scanned documents
- File sharing between patient and provider
- Telehealth video integration
- Wearable device integration
- AI chatbot for health questions
- Multi-language support
MIT License - see LICENSE file for details
Contributions welcome! Please read CONTRIBUTING.md for guidelines.
- Documentation: See
/helpin the app - Issues: GitHub Issues
- Email: support@healthcompanion.example
Version: 1.2.0 Last Updated: 2025-10-02 Status: β Production Ready - 28 Fully Functional Modules