Skip to content

Rajput-xv/Health-Report-Analyzer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🩺 Health Report Analyzer

You can take a look at this project at - Website

Upload your lab reports (PDF/image) and get your health data automatically extracted into organized tables with trend analysis. No more manual data entry!

πŸ“Š Project Insights

🌟 Stars 🍴 Forks πŸ› Issues πŸ”” Open PRs πŸ”• Closed PRs πŸ› οΈ Languages
Stars Forks Issues Open PRs Closed PRs Languages Count

What It Does

  • Upload lab reports and get instant data extraction
  • View results in clean, sortable tables
  • Track trends over time
  • Secure login and data storage

Supported Tests

Cholesterol, Blood Sugar, Blood Count, Vitamins, Thyroid, and more.

Tech Stack

React + Node.js + MongoDB + OCR

Quick Start

Prerequisites: Node.js + MongoDB

# Install everything
npm run install-all

# Start the app
npm run dev

Open http://localhost:3000 and start uploading your reports!

Environment Setup

When you fork this repository, you'll need to set up the following environment variables:

Client (.env file in /client directory)

# Development API URL - use localhost during development
VITE_API_URL=http://localhost:5001/api

# Firebase configuration - create your Firebase project at https://console.firebase.google.com/
VITE_FIREBASE_API_KEY="your-api-key"
VITE_FIREBASE_AUTH_DOMAIN="your-project-id.firebaseapp.com"
VITE_FIREBASE_PROJECT_ID="your-project-id"
VITE_FIREBASE_STORAGE_BUCKET="your-project-id.appspot.com"
VITE_FIREBASE_MESSAGING_SENDER_ID="your-sender-id"
VITE_FIREBASE_APP_ID="your-app-id"
VITE_FIREBASE_MEASUREMENT_ID="your-measurement-id"

Server (.env file in /server directory)

PORT=5001
NODE_ENV=development
# Generate a strong random string for JWT_SECRET (use a secure generator)
JWT_SECRET=your-secure-random-string
SESSION_EXPIRE=7d
# Create a MongoDB Atlas cluster or use local MongoDB
MONGODB_URI=mongodb+srv://username:password@cluster.mongodb.net/health-report?retryWrites=true&w=majority
# Set to your frontend URL, use localhost during development
FRONTEND_URL=http://localhost:3000

# For password reset functionality
EMAIL_USER=your-email@gmail.com
# Create an app password if using Gmail: https://myaccount.google.com/apppasswords
EMAIL_PASS=your-app-password

How to get these credentials:

  1. Firebase: Create a Firebase project and get your web app credentials
  2. MongoDB: Set up a MongoDB Atlas cluster or use a local MongoDB instance
  3. JWT Secret: Generate a secure random string using a tool like RandomKeygen
  4. Email (for password reset): Use your Gmail account and create an app password

Common Issues

  • No data extracted? Try PDF instead of image
  • Can't connect? Make sure MongoDB is running
  • Slow upload? Large files take time to process

Security

Your files are processed in memory only - never saved to disk. JWT authentication keeps your data secure.

Disclaimer: For informational purposes only. Always consult healthcare professionals for medical advice.

πŸ“œ License

Licensed under the MIT License.

πŸ’‘ Suggestions & Feedback

If you have ideas for improving Health Report Analyzer, feel free to reach out with feedback or feature suggestions!

If you find this project helpful, please give it a star! ⭐

πŸ“¬ Contact For questions, suggestions, or collaboration, reach out via LinkedIn or open an issue!

Glowing Star Give us a Star and let's make magic! Glowing Star

Back to Top
Mirror Ball

Thanks Banner Typing SVG

Project Admin:

Rajput
YASH VERMA

Made with ❀️ by YASH VERMA ❀️ Watch Demo

Stay consistent. Keep the streak alive. πŸ”₯

Releases

No releases published

Packages

No packages published

Contributors 40