Skip to content

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

ย 

History

9 Commits

Folders and files

Repository files navigation

HealthCare Helper Platform

A comprehensive healthcare platform designed to assist elderly users with medicine identification and doctor finding. Built with Express.js, MongoDB, and modern web technologies.

๐Ÿš€ Features

Medicine Management

  • AI-Powered Medicine Scanning: Upload medicine images for intelligent identification
  • Barcode Scanning: Quick medicine lookup using barcode scanning
  • Comprehensive Medicine Database: Detailed information about medicines including uses, precautions, and interactions
  • Search & Filter: Advanced search capabilities with category and prescription filters

Doctor Finder

  • Location-Based Search: Find doctors near your location
  • Specialization Filtering: Search by medical specialization
  • Rating & Reviews: View doctor ratings and patient reviews
  • Availability Check: See doctor availability and consultation fees

User Experience

  • Elderly-Friendly Design: Large fonts, clear navigation, and intuitive interface
  • Voice Assistant: Voice commands for hands-free navigation
  • Responsive Design: Works on desktop, tablet, and mobile devices
  • Accessibility: WCAG compliant with screen reader support

๐Ÿ—๏ธ Architecture

Backend Structure

src/
โ”œโ”€โ”€ app.js                 # Main application setup
โ”œโ”€โ”€ config/               # Configuration files
โ”‚   โ”œโ”€โ”€ database.js       # Database connection
โ”‚   โ””โ”€โ”€ index.js          # App configuration
โ”œโ”€โ”€ controllers/          # Business logic controllers
โ”‚   โ”œโ”€โ”€ medicineController.js
โ”‚   โ””โ”€โ”€ doctorController.js
โ”œโ”€โ”€ middleware/           # Custom middleware
โ”‚   โ”œโ”€โ”€ errorHandler.js   # Error handling
โ”‚   โ”œโ”€โ”€ logger.js         # Request logging
โ”‚   โ””โ”€โ”€ validation.js     # Input validation
โ”œโ”€โ”€ models/              # Database models
โ”‚   โ”œโ”€โ”€ Doctor.js
โ”‚   โ”œโ”€โ”€ Medicine.js
โ”‚   โ””โ”€โ”€ ScanHistory.js
โ”œโ”€โ”€ routes/              # API routes
โ”‚   โ”œโ”€โ”€ doctor.js
โ”‚   โ””โ”€โ”€ medicine.js
โ”œโ”€โ”€ services/            # Business services
โ”‚   โ”œโ”€โ”€ imageService.js
โ”‚   โ””โ”€โ”€ medicineService.js
โ”œโ”€โ”€ utils/               # Utility functions
โ”‚   โ”œโ”€โ”€ helpers.js
โ”‚   โ””โ”€โ”€ response.js
โ””โ”€โ”€ scripts/             # Database scripts
    โ””โ”€โ”€ seed-database.js

Frontend Structure

public/
โ”œโ”€โ”€ index.html           # Main application page
โ”œโ”€โ”€ css/
โ”‚   โ””โ”€โ”€ style.css        # Application styles
โ”œโ”€โ”€ js/
โ”‚   โ””โ”€โ”€ script.js        # Client-side JavaScript
โ”œโ”€โ”€ images/              # Static images
โ””โ”€โ”€ uploads/             # User uploaded files

๐Ÿ› ๏ธ Tech Stack

Backend

  • Node.js - Runtime environment
  • Express.js - Web framework
  • MongoDB - Database
  • Mongoose - ODM for MongoDB
  • Multer - File upload handling
  • Sharp - Image processing
  • Joi - Data validation
  • Helmet - Security middleware
  • CORS - Cross-origin resource sharing

Frontend

  • HTML5 - Semantic markup
  • CSS3 - Modern styling with CSS Grid and Flexbox
  • Vanilla JavaScript - No framework dependencies
  • Font Awesome - Icons
  • Google Fonts - Typography

๐Ÿ“ฆ Installation

Prerequisites

  • Node.js (v16 or higher)
  • MongoDB (local or Atlas)
  • npm or yarn

Setup

  1. Clone the repository

    git clone https://github.com/your-username/healthcare-helper-platform.git
    cd healthcare-helper-platform
  2. Install dependencies

    npm install
  3. Environment configuration

    cp env.example .env
    # Edit .env with your configuration
  4. Database setup

    # Start MongoDB (if running locally)
    mongod
    
    # Seed the database with sample data
    npm run seed
  5. Start the application

    # Development mode
    npm run dev
    
    # Production mode
    npm start
  6. Access the application

    • Open your browser to http://localhost:3000
    • API health check: http://localhost:3000/api/health

๐Ÿ”ง Configuration

Environment Variables

Variable Description Default
NODE_ENV Environment mode development
PORT Server port 3000
MONGODB_URI MongoDB connection string mongodb://localhost:27017/healthcare-helper
FRONTEND_URL Frontend URL for CORS http://localhost:3000
JWT_SECRET JWT secret key your-super-secret-jwt-key
MAX_FILE_SIZE Maximum file upload size 10485760 (10MB)

Database Models

Medicine

  • Basic information (name, dosage, form)
  • Medical details (uses, precautions, side effects)
  • Images and barcode support
  • Category and prescription requirements

Doctor

  • Personal information and credentials
  • Specialization and experience
  • Location and availability
  • Ratings and reviews
  • Contact information

ScanHistory

  • User scan records
  • Medicine identification results
  • Confidence scores and metadata

๐Ÿ“š API Documentation

Medicine Endpoints

Method Endpoint Description Access
POST /api/medicine/scan Scan medicine image Public
POST /api/medicine/barcode Scan by barcode Public
GET /api/medicine/search Search medicines Public
GET /api/medicine/:id Get medicine details Public
GET /api/medicine/categories/list Get categories Public
POST /api/medicine Create medicine Admin
PUT /api/medicine/:id Update medicine Admin
DELETE /api/medicine/:id Delete medicine Admin

Doctor Endpoints

Method Endpoint Description Access
GET /api/doctors/search Search doctors Public
GET /api/doctors/nearby Find nearby doctors Public
GET /api/doctors/:id Get doctor details Public
GET /api/doctors/specializations/list Get specializations Public
POST /api/doctors/:id/review Add review Private
POST /api/doctors Create doctor Admin
PUT /api/doctors/:id Update doctor Admin
DELETE /api/doctors/:id Delete doctor Admin

๐Ÿงช Testing

# Run tests (when implemented)
npm test

# Run linting
npm run lint

# Fix linting issues
npm run lint:fix

๐Ÿš€ Deployment

Production Checklist

  • Set NODE_ENV=production
  • Configure MongoDB Atlas or production database
  • Set secure JWT secret
  • Configure CORS for production domain
  • Set up file storage (AWS S3 or similar)
  • Configure rate limiting
  • Set up monitoring and logging
  • Configure SSL/TLS

Docker Deployment

# Build Docker image
docker build -t healthcare-helper .

# Run container
docker run -p 3000:3000 healthcare-helper

๐Ÿค Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Development Guidelines

  • Follow the existing code style
  • Write meaningful commit messages
  • Add tests for new features
  • Update documentation as needed
  • Ensure all tests pass before submitting PR

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

๐Ÿ™ Acknowledgments

  • Font Awesome for icons
  • Google Fonts for typography
  • MongoDB for database
  • Express.js community for excellent documentation

๐Ÿ“ž Support

For support, email support@healthcare-helper.com or create an issue in the repository.

๐Ÿ”ฎ Roadmap

  • User authentication and profiles
  • Appointment booking system
  • Push notifications
  • Mobile app (React Native)
  • Advanced AI medicine recognition
  • Integration with pharmacy APIs
  • Multi-language support
  • Offline functionality

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages