Skip to content

AaronCasildo/HealthCheck

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

149 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HealthCheck - Intelligent Laboratory Results Interpreter

Project Status Python FastAPI Gemini AI

Transform complex laboratory results into clear, understandable insights


About the Project

HealthCheck is a web application that uses artificial intelligence to interpret blood test results, translating complex medical terminology into clear and understandable language for patients.

What does it do?

  • Upload laboratory results in PDF format
  • Intelligent analysis powered by Google Gemini AI
  • Interpretation in simple and accessible language
  • Medical perspective specialized in hematology
  • Secure processing of sensitive information
  • Download results as professional PDF reports
  • Dark mode support for comfortable viewing

Medical Disclaimer

HealthCheck is NOT a medical device.

This tool is for informational purposes only. Do not use it for diagnosis or treatment. Always consult a qualified healthcare professional. AI-generated results may contain inaccuracies and do not replace professional medical interpretation.


Screenshots

Home Page

image image

Analysis in Progress

image

Results Page

image image

PDF Export

image

Features

Core Features

Feature Description
PDF Upload Drag & drop or click to upload laboratory PDFs
AI Analysis Powered by Google Gemini 2.5 Flash for accurate interpretation
Dual View Technical interpretation + simplified explanation
Executive Summary Quick overview of your results

User Experience

Feature Description
Dark Mode Toggle between light and dark themes
Theme Persistence Your preference saved automatically
System Detection Respects your OS color scheme
Responsive Design Works on desktop and mobile

Export & Download

Feature Description
PDF Export Download results as professional PDF
Formatted Report Includes header, sections, and disclaimer
Multi-page Support Automatic pagination for long results

Recent Additions

Feature Description
History Page View and manage past analysis results
History Manager Local storage system for saved analyses
Sort Controls Organize history by name (A-Z, Z-A)
Quick Access Breadcrumb navigation and direct result links
Processing Time Display Shows analysis duration and pages processed
API Status Monitoring Enhanced health check with detailed logging
Startup Banner Displays API info and configuration on server start
Rate Limiting API protection with 60 requests/minute limit
Enhanced Security CORS configuration and request validation
Modular Architecture Organized routes and services structure

Tech Stack

Backend

Technology Purpose
Python 3.8+ Core language
FastAPI Web framework
PyMuPDF PDF text extraction
Google Gemini AI AI-based analysis
python-dotenv Environment management

Frontend

Technology Purpose
HTML5 Structure
CSS3 Styling with CSS Variables
JavaScript Interactivity
jsPDF Client-side PDF generation
marked.js Markdown parsing

Getting Started

Prerequisites

  • Python 3.8 or higher
  • Google Gemini API key

Installation

  1. Clone the repository
   git clone https://github.com/AaronCasildo/WebCheck.git
   cd WebCheck
  1. Install dependencies
   pip install -r requirements.txt
  1. Set up environment variables

    Create a .env file in the Backend/ folder:

   GEMINI_API_KEY=your_api_key_here
  1. Run the server
   cd Backend
   uvicorn main:app --reload
  1. Open in browser

    Navigate to http://localhost:8000 or open WebCheck.html


Project Structure

WebCheck/
├── WebCheck.html          # Main landing page
├── script.js              # Main JavaScript file
├── requirements.txt       # Python dependencies
├── readme.md              # This file
│
├── Backend/
│   ├── main.py            # FastAPI application
│   ├── config.py          # Configuration settings
│   ├── routes/            # API endpoints
│   │   └── pdf.py         # PDF processing routes
│   ├── services/          # Business logic
│   │   ├── ai_service.py  # Gemini AI integration
│   │   └── pdf_service.py # PDF extraction
│   └── outputs/           # Sample outputs
│
├── Frontend/
│   ├── pages/
│   │   ├── Results.html   # Results display page
│   │   ├── History.html   # History page for past results
│   │   ├── Login.html     # Login page
│   │   └── Register.html  # Registration page
│   ├── scripts/
│   │   ├── modules/
│   │   │   ├── results-page.js    # Results page logic
│   │   │   ├── pdf-generator.js   # PDF export module
│   │   │   └── history.js         # History page logic
│   │   └── utils/
│   │       ├── theme-toggle.js    # Dark mode functionality
│   │       └── history-manager.js # Local storage management
│   └── styles/
│       └── styles.css     # Global styles + theming
│
└── media/                 # Images and icons

Contributing

Contributions are welcome. To collaborate:

  1. Fork the repository
  2. Create a feature branch
   git checkout -b feature/AmazingFeature
  1. Commit your changes
   git commit -m 'feat: add amazing feature'
  1. Push to your branch
   git push origin feature/AmazingFeature
  1. Open a Pull Request

Commit Convention

This project follows Conventional Commits:

  • feat: New feature
  • fix: Bug fix
  • docs: Documentation changes
  • style: Code style changes
  • refactor: Code refactoring

Developers

Aaron Casildo Rubalcava · Daniel Romero Bravo


Status License

Actively in Development – 2025

About

HealthCheck is a web tool that uses Google's Gemini AI to translate complex blood test results from a PDF into simple, understandable language. This application is for informational purposes only and is not a substitute for professional medical diagnosis. Currently in active development.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors