Skip to content

h4ck3r0/SkinSight

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ₯ SkinSight - AI-Powered Healthcare Platform

SkinSight Logo(https://skinsight.netlify.app)

Revolutionizing healthcare with AI-powered skin analysis, intelligent chat assistance, and comprehensive hospital management

Live Demo ML Service

Features β€’ Tech Stack β€’ Quick Start β€’ API Documentation β€’ Contributing


🌟 Overview

SkinSight is a cutting-edge healthcare management platform that combines traditional hospital management with advanced AI capabilities. The platform serves patients, doctors, and hospital staff with features ranging from AI-powered skin condition analysis to intelligent medical report interpretation.

🎯 Key Highlights

  • πŸ€– AI-Powered Skin Analysis: Upload skin images for instant condition detection using deep learning
  • πŸ’¬ Intelligent Medical Assistant: AI chat bot for medical report analysis and health insights
  • πŸ₯ Comprehensive Hospital Management: Complete appointment and queue management system
  • πŸ“± Real-time Communication: Live video calls and instant messaging between patients and doctors
  • πŸ”’ Secure & Scalable: JWT authentication with role-based access control

✨ Features

🎨 For Patients

  • Smart Hospital Discovery: Find nearby hospitals with advanced filtering
  • AI Skin Analysis: Upload photos for instant skin condition detection
  • Intelligent Medical Assistant: Get insights on medical reports and test results
  • Appointment Booking: Easy appointment scheduling with real-time availability
  • Queue Management: Join virtual queues and track your position
  • Video Consultations: Secure video calls with healthcare providers
  • Medical History: Complete appointment and consultation history

πŸ‘¨β€βš•οΈ For Doctors

  • Patient Management: View and manage patient appointments
  • Queue Control: Real-time queue management and patient flow
  • Video Consultations: Conduct secure video calls with patients
  • Profile Management: Comprehensive doctor profile setup
  • Hospital Association: Connect with multiple healthcare facilities

πŸ₯ For Hospital Staff

  • Hospital Dashboard: Complete hospital management interface
  • Doctor Management: Manage doctor profiles and schedules
  • Queue Monitoring: Real-time queue status and management
  • Appointment Oversight: Monitor and manage all appointments

πŸ€– AI Features

  • Skin Condition Detection: Deep learning model for skin disease classification
  • Medical Report Analysis: AI-powered interpretation of medical documents
  • Intelligent Chat: Context-aware medical assistance
  • OCR Integration: Extract text from medical images and documents

πŸ›  Tech Stack

Frontend

  • React 19 - Modern UI framework with hooks
  • Vite - Fast build tool and development server
  • Tailwind CSS 4 - Utility-first CSS framework
  • React Router DOM - Client-side routing
  • Socket.IO Client - Real-time communication
  • Axios - HTTP client for API calls
  • React Hot Toast - User notifications

Backend

  • Node.js - JavaScript runtime
  • Express.js - Web application framework
  • MongoDB - NoSQL database
  • Mongoose - MongoDB object modeling
  • Socket.IO - Real-time bidirectional communication
  • JWT - JSON Web Token authentication
  • bcryptjs - Password hashing
  • OpenAI API - AI-powered chat and analysis

AI/ML Services

  • Python Flask - ML service framework
  • PyTorch - Deep learning framework
  • ResNet-50 - Pre-trained CNN for image classification
  • OpenAI GPT-4 - Advanced language model for medical assistance

DevOps & Deployment

  • Netlify - Frontend hosting
  • Render - Backend and ML service hosting
  • MongoDB Atlas - Cloud database
  • Environment Variables - Secure configuration management

πŸš€ Quick Start

Prerequisites

  • Node.js (v18.0.0 or higher)
  • npm or yarn package manager
  • MongoDB instance (local or MongoDB Atlas)
  • Python 3.8+ (for ML service)
  • OpenAI API Key (for AI features)

πŸ“¦ Installation

1. Clone the Repository

git clone https://github.com/yourusername/SkinSight.git
cd SkinSight

2. Backend Setup

cd server

# Install dependencies
npm install

# Create environment file
cp .env.example .env

Configure your .env file:

PORT=5000
MONGO_URL=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret_key
OPENAI_API_KEY=your_openai_api_key
NODE_ENV=development
# Start development server
npm run dev

3. Frontend Setup

cd ../client

# Install dependencies
npm install

# Create environment file
cp .env.example .env

Configure your .env file:

VITE_API_URL=http://localhost:5000
# Start development server
npm run dev

4. ML Service Setup (Optional)

cd ../server/ml

# Install Python dependencies
pip install -r requirements.txt

# Start ML service
python app.py

🌐 Access the Application


πŸ“š API Documentation

Authentication Endpoints

POST /api/auth/register
POST /api/auth/login
POST /api/auth/logout
GET  /api/auth/profile

Hospital Management

GET    /api/hospitals
POST   /api/hospitals
GET    /api/hospitals/:id
PUT    /api/hospitals/:id
DELETE /api/hospitals/:id

Appointment System

GET    /api/appointments
POST   /api/appointments
PUT    /api/appointments/:id
DELETE /api/appointments/:id

Queue Management

GET    /api/queues
POST   /api/queues/join
PUT    /api/queues/:id
DELETE /api/queues/:id

AI Services

POST /api/chat
POST /api/analyze-image
POST /api/ocr

ML Service Endpoints

GET  /ml/health
POST /ml/predict

πŸ— Project Structure

SkinSight/
β”œβ”€β”€ client/                 # React frontend
β”‚   β”œβ”€β”€ public/            # Static assets
β”‚   β”‚   β”œβ”€β”€ components/    # React components
β”‚   β”‚   β”œβ”€β”€ context/       # React context providers
β”‚   β”‚   β”œβ”€β”€ hooks/         # Custom React hooks
β”‚   β”‚   β”œβ”€β”€ constants/     # Application constants
β”‚   β”‚   └── assets/        # Images and icons
β”‚   β”œβ”€β”€ package.json
β”‚   └── vite.config.js
β”œβ”€β”€ server/                # Node.js backend
β”‚   β”œβ”€β”€ controllers/       # Route controllers
β”‚   β”œβ”€β”€ models/           # MongoDB models
β”‚   β”œβ”€β”€ routes/           # API routes
β”‚   β”œβ”€β”€ middleware/       # Custom middleware
β”‚   β”œβ”€β”€ ml/              # Python ML service
β”‚   β”‚   β”œβ”€β”€ app.py       # Flask ML API
β”‚   β”‚   β”œβ”€β”€ best_resnet50_model.pth
β”‚   β”‚   └── requirements.txt
β”‚   β”œβ”€β”€ socket.js        # Socket.IO configuration
β”‚   └── index.js         # Main server file
└── README.md

πŸ”§ Configuration

Environment Variables

Backend (.env)

PORT=5000
MONGO_URL=mongodb://localhost:27017/skinsight
JWT_SECRET=your_super_secret_jwt_key
OPENAI_API_KEY=sk-your_openai_api_key
NODE_ENV=development
CORS_ORIGIN=http://localhost:5173

Frontend (.env)

VITE_API_URL=http://localhost:5000
VITE_ML_SERVICE_URL=http://localhost:5001

Database Setup

  1. Local MongoDB:

    mongod --dbpath /path/to/your/data/directory
  2. MongoDB Atlas:

    • Create a cluster at MongoDB Atlas
    • Get your connection string
    • Update MONGO_URL in your .env file

πŸš€ Deployment

Frontend (Netlify)

  1. Build the project:

    cd client
    npm run build
  2. Deploy to Netlify:

    • Connect your GitHub repository
    • Set build command: npm run build
    • Set publish directory: dist

Backend (Render/Heroku)

  1. Render:

    • Connect your GitHub repository
    • Set build command: npm install
    • Set start command: npm start
    • Add environment variables
  2. Heroku:

    heroku create your-app-name
    heroku config:set MONGO_URL=your_mongodb_url
    heroku config:set JWT_SECRET=your_jwt_secret
    git push heroku main

ML Service (Render)

  1. Create a new Web Service on Render
  2. Connect your GitHub repository
  3. Set build command: pip install -r requirements.txt
  4. Set start command: python app.py

🀝 Contributing

We welcome contributions! Please follow these steps:

  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
  • Add tests for new features
  • Update documentation as needed
  • Ensure all tests pass before submitting

πŸ“„ License

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


πŸ™ Acknowledgments

  • OpenAI for providing the GPT-4 API
  • MongoDB for the database solution
  • Netlify and Render for hosting services
  • Tailwind CSS for the beautiful UI framework
  • React team for the amazing frontend framework

πŸ“ž Support


Made with ❀️ for better healthcare

GitHub stars GitHub forks

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 96.4%
  • HTML 2.9%
  • Other 0.7%