Skip to content

An AI-powered healthcare assistant that provides medical information, symptom analysis, and health recommendations using Google's Gemini AI.

License

Notifications You must be signed in to change notification settings

NikhilRaikwar/HealthAI-Assistant

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

HealthAI Assistant ๐Ÿฅ

Open Source Love Hacktoberfest 2025 License: MIT PRs Welcome Stars Forks

An AI-powered healthcare assistant that provides medical information, symptom analysis, and health recommendations using Google's Gemini AI. Supporting multiple languages for global accessibility! ๐ŸŒ


๐ŸŽƒ Hacktoberfest 2025 - Join Us!

๐Ÿšจ IMPORTANT: Star the Repo First! ๐Ÿšจ

Your Hacktoberfest contribution will be marked INVALID if you don't star the repository!

Star this repo

๐Ÿ‘† Click above to star the repo - It takes 2 seconds!

We're excited to participate in Hacktoberfest 2025! This is the perfect opportunity for open source developers to contribute to a meaningful healthcare project. Whether you're fixing bugs, adding features, improving documentation, or enhancing the UI, your contributions are welcome!

๐Ÿ“‹ Before You Contribute:

  1. โญ STAR THE REPOSITORY - This is MANDATORY for valid contributions
  2. ๐Ÿ“– Read our CONTRIBUTING.md thoroughly
  3. ๐Ÿ” Find an issue or create a new one
  4. โณ Wait for maintainer assignment before starting work
  5. ๐ŸŽฏ Submit focused, quality PRs

๐ŸŽ‰ All Quality Contributions Welcome!

We accept meaningful contributions:

  • ๐Ÿ’ป Code Contributions: Bug fixes, new features, refactoring
  • ๐ŸŽจ UI/UX Redesigns: Design improvements, responsive fixes, accessibility enhancements
  • ๐Ÿ“š Documentation: README updates, code comments, guides, tutorials
  • ๐Ÿงช Testing: Writing tests, improving test coverage
  • ๐Ÿ› Bug Reports: Finding and reporting issues with detailed information
  • ๐Ÿ’ก Feature Proposals: Well-thought-out feature requests with mockups/diagrams
  • ๐ŸŒ Translations: Adding language support
  • โ™ฟ Accessibility: Making the app more accessible

โš ๏ธ Important: Quality Over Quantity!

We Do NOT Accept:

  • โŒ PRs without starring the repo first
  • โŒ Working without issue assignment
  • โŒ Spammy PRs: Minor changes just to get a PR count (e.g., adding spaces, removing empty lines)
  • โŒ Low-Effort Contributions: Changes that add no real value
  • โŒ Copy-Paste Code: Directly copying code from other projects without understanding
  • โŒ Massive Unfocused PRs: Trying to add 5+ features in one PR
  • โŒ Incomplete Work: PRs that are half-done or don't work properly
  • โŒ README Only Changes: Just adding your name without meaningful contribution

โš ๏ธ Your PR will be marked as "invalid" or "spam" if it doesn't provide meaningful value to the project.

โœ… What Makes a Good Contribution?

  • Well-documented: Clear description of what and why
  • Tested: You've tested your changes locally
  • Focused: Addresses one specific issue or feature
  • Quality code: Follows project conventions and best practices
  • Meaningful: Adds real value to the project and its users

๐Ÿš€ Quick Start for Hacktoberfest Contributors

  1. โญ Star the repo - Click here (MANDATORY!)
  2. Find an issue - Check our Good First Issues or Hacktoberfest labeled issues
  3. Comment on the issue - Express your interest: "I'd like to work on this"
  4. Wait for assignment - Maintainers will assign the issue to you
  5. Fork the repo - Click the 'Fork' button at the top right
  6. Create your branch - Use descriptive names: git checkout -b feature/your-feature-name
  7. Make your changes - Follow our contribution guidelines
  8. Add yourself to CONTRIBUTORS.md - Celebrate your contribution!
  9. Submit a PR - Create a pull request and our maintainers will review it

โœจ Key Features

  • ๐ŸŒ Multilingual Support: Get healthcare assistance in multiple languages
  • ๐Ÿ” Symptom Analysis: AI-powered analysis with severity assessment and recommendations
  • ๐Ÿ’Š Drug Interaction Checker: Check potential interactions between medications
  • ๐Ÿ“š Medical Term Explainer: Understand complex medical terminology in simple language
  • ๐Ÿ“„ Medical Report Assistant: Upload and get AI-powered summaries and Q&A for medical reports
  • ๐Ÿ’ฌ Healthcare Chat: Interactive chat with AI for health-related queries
  • ๐Ÿšจ Emergency Contacts: Quick access to important emergency numbers

๐ŸŒ Supported Languages

  • ๐Ÿ‡ฌ๐Ÿ‡ง English
  • ๐Ÿ‡ฎ๐Ÿ‡ณ Hindi
  • ๐Ÿ‡ช๐Ÿ‡ธ Spanish
  • ๐Ÿ‡ซ๐Ÿ‡ท French
  • ๐Ÿ‡ฉ๐Ÿ‡ช German
  • ๐Ÿ‡จ๐Ÿ‡ณ Chinese
  • ๐Ÿ‡ฏ๐Ÿ‡ต Japanese
  • ๐Ÿ‡ฐ๐Ÿ‡ท Korean
  • ๐Ÿ‡ธ๐Ÿ‡ฆ Arabic
  • And more...

๐Ÿ›  Tech Stack

  • โš›๏ธ React.js - UI framework
  • โšก Vite - Build tool
  • ๐Ÿค– Gemini AI API - AI-powered responses
  • ๐ŸŽจ Tailwind CSS - Styling
  • ๐Ÿ“˜ TypeScript - Type safety

๐Ÿš€ Live Demo

Visit the live application: HealthAI Assistant


๐Ÿ“‹ Table of Contents


Getting Started

Prerequisites

  • Node.js (version 16 or higher)
  • npm or yarn
  • Gemini AI API key

Installation

  1. Clone the repository:
git clone https://github.com/NikhilRaikwar/HealthAI-Assistant.git
cd HealthAI-Assistant
  1. Install dependencies:
npm install
  1. Set up environment variables:
    • Create a .env file in the root directory
    • Add your Gemini AI API key:
VITE_GEMINI_API_KEY=your_gemini_api_key_here
  1. Start the development server:
npm run dev

The application will be available at http://localhost:5173


Development Setup

For New Contributors

  1. Set up your development environment:

    • Make sure you have Node.js installed (v16+ recommended)
    • Use a code editor like VS Code with these recommended extensions:
      • ES7+ React/Redux/React-Native snippets
      • Prettier - Code formatter
      • ESLint
      • Tailwind CSS IntelliSense
  2. Understand the project structure: See Project Structure section below

  3. Follow our coding standards:

    • Use functional components with hooks
    • Follow the existing code style and formatting
    • Write meaningful commit messages
    • Add comments for complex logic

Contributing

We welcome all types of contributions! Here are some ways you can help:

๐Ÿ› Bug Fixes

  • Fix typos in documentation
  • Resolve UI/UX issues
  • Solve functional bugs
  • Fix responsive design issues

๐ŸŽจ UI/UX Improvements

  • Redesign existing components
  • Improve responsive design
  • Add animations and micro-interactions
  • Enhance accessibility (WCAG compliance)
  • Improve dark/light mode consistency

โœจ New Features

  • Add new language support
  • Implement new healthcare features
  • Create new utility components
  • Voice input for symptom analysis
  • Session history tracking
  • Export/download functionality

๐Ÿ“š Documentation

  • Improve README documentation
  • Add code comments and JSDoc
  • Create contribution guides
  • Write tutorials and how-to guides
  • Add API documentation

๐Ÿ”ง Technical Enhancements

  • Performance optimizations
  • Code refactoring
  • Add unit tests
  • Implement TypeScript
  • Improve error handling

๐Ÿ“– Read the Full Guidelines:

Before contributing, please read our detailed CONTRIBUTING.md file!

Contribution Process

  1. โญ Star the repository (MANDATORY!)
  2. ๐Ÿ” Find an issue or create a new one if you have an idea
  3. ๐Ÿ’ฌ Comment on the issue expressing interest
  4. โณ Wait for assignment from a maintainer
  5. ๐Ÿด Fork the repository and create your feature branch
  6. ๐Ÿ’ป Make your changes following our code standards
  7. ๐Ÿงช Test your changes thoroughly
  8. ๐Ÿ“ Add yourself to CONTRIBUTORS.md
  9. ๐Ÿš€ Submit a pull request with a clear description

Pull Request Guidelines

  • โœ… Provide a clear title and description
  • โœ… Reference any related issues (e.g., "Closes #123")
  • โœ… Include screenshots for UI changes
  • โœ… Ensure all tests pass
  • โœ… Follow the PR template
  • โœ… Keep PRs focused (one feature/fix per PR)

Project Structure

HealthAI-Assistant/
โ”œโ”€โ”€ README.md
โ”œโ”€โ”€ components.json
โ”œโ”€โ”€ CONTRIBUTING.md
โ”œโ”€โ”€ CONTRIBUTORS.md
โ”œโ”€โ”€ eslint.config.js
โ”œโ”€โ”€ index.html
โ”œโ”€โ”€ LICENSE
โ”œโ”€โ”€ package.json
โ”œโ”€โ”€ postcss.config.js
โ”œโ”€โ”€ tailwind.config.js
โ”œโ”€โ”€ tsconfig.app.json
โ”œโ”€โ”€ tsconfig.json
โ”œโ”€โ”€ tsconfig.node.json
โ”œโ”€โ”€ vite.config.ts
โ”œโ”€โ”€ .hintrc
โ”œโ”€โ”€ public/                     # Static files
โ”‚   โ”œโ”€โ”€ robots.txt
โ”‚   โ”œโ”€โ”€ site.webmanifest
โ”‚   โ””โ”€โ”€ sitemap.xml
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ App.tsx                 # Main application component
โ”‚   โ”œโ”€โ”€ index.css               # Global styles
โ”‚   โ”œโ”€โ”€ main.tsx                # Application entry point
โ”‚   โ”œโ”€โ”€ vite-env.d.ts          # Vite environment types
โ”‚   โ”œโ”€โ”€ components/             # React components
โ”‚   โ”‚   โ”œโ”€โ”€ About.tsx
โ”‚   โ”‚   โ”œโ”€โ”€ AppContent.tsx
โ”‚   โ”‚   โ”œโ”€โ”€ DrugInteraction.tsx
โ”‚   โ”‚   โ”œโ”€โ”€ Emergency.tsx
โ”‚   โ”‚   โ”œโ”€โ”€ HealthcareChat.tsx
โ”‚   โ”‚   โ”œโ”€โ”€ HealthcareLogo.tsx
โ”‚   โ”‚   โ”œโ”€โ”€ Homepage.tsx
โ”‚   โ”‚   โ”œโ”€โ”€ MedicalTermExplainer.tsx
โ”‚   โ”‚   โ”œโ”€โ”€ PolicyQueryAssistant.tsx
โ”‚   โ”‚   โ”œโ”€โ”€ ReportSummarizer.tsx
โ”‚   โ”‚   โ”œโ”€โ”€ SymptomAnalyzer.tsx
โ”‚   โ”‚   โ”œโ”€โ”€ navigation/         # Navigation components
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ MobileMenu.tsx
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ Navbar.tsx
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ NavItem.tsx
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ NavLogo.tsx
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ ThemeToggle.tsx
โ”‚   โ”‚   โ””โ”€โ”€ ui/                 # Reusable UI components
โ”‚   โ”‚       โ”œโ”€โ”€ bento-grid.tsx
โ”‚   โ”‚       โ”œโ”€โ”€ button.tsx
โ”‚   โ”‚       โ”œโ”€โ”€ ChatInput.tsx
โ”‚   โ”‚       โ”œโ”€โ”€ MessageList.tsx
โ”‚   โ”‚       โ”œโ”€โ”€ navigation-menu.tsx
โ”‚   โ”‚       โ””โ”€โ”€ PageContainer.tsx
โ”‚   โ”œโ”€โ”€ config/                 # Configuration files
โ”‚   โ”‚   โ””โ”€โ”€ navigation.ts
โ”‚   โ”œโ”€โ”€ context/                # React context providers
โ”‚   โ”‚   โ”œโ”€โ”€ NavigationContext.tsx
โ”‚   โ”‚   โ””โ”€โ”€ ThemeContext.tsx
โ”‚   โ”œโ”€โ”€ lib/                    # External library configurations
โ”‚   โ”‚   โ”œโ”€โ”€ gemini.ts          # Gemini AI integration
โ”‚   โ”‚   โ””โ”€โ”€ utils.ts           # Utility helper functions
โ”‚   โ”œโ”€โ”€ types/                  # TypeScript type definitions
โ”‚   โ”‚   โ””โ”€โ”€ index.ts
โ”‚   โ””โ”€โ”€ utils/                  # Utility functions
โ”‚       โ””โ”€โ”€ pdfUtils.ts        # PDF processing utilities
โ””โ”€โ”€ .github/                    # GitHub configuration
    โ”œโ”€โ”€ PULL_REQUEST_TEMPLATE.md
    โ””โ”€โ”€ ISSUE_TEMPLATE/
        โ”œโ”€โ”€ bug_report.md
        โ”œโ”€โ”€ feature_request.md
        โ””โ”€โ”€ ui_redesign.md

Available Scripts

# Start development server
npm run dev

# Build for production
npm run build

# Preview production build
npm run preview

# Run linter
npm run lint

# Format code
npm run format

Feature Roadmap

๐ŸŽฏ High Priority

  • ๐Ÿงช Add comprehensive unit testing
  • ๐Ÿ“ฑ Enhance mobile responsiveness
  • โœ… Add medical report validation
  • โ™ฟ Improve accessibility (WCAG 2.1 AA compliance)
  • ๐Ÿ“Š PWA capabilities for offline support

๐Ÿ”ฎ Future Features

  • ๐ŸŽ™๏ธ Voice input support for symptom analysis
  • ๐Ÿ’Š Medication reminder system
  • ๐Ÿ“ˆ Health tracking dashboard
  • ๐Ÿ”Œ Integration with health APIs
  • ๐Ÿ“ฅ Export health reports (PDF/JSON)
  • ๐Ÿ‘ฅ Multi-user support with profiles
  • ๐Ÿ”” Real-time notifications
  • ๐Ÿ“ Location-based emergency services

Usage Guide

๐Ÿ” Symptom Analysis

  1. Navigate to the Symptom Analysis section
  2. Enter your symptoms in natural language
  3. Get AI-powered analysis with potential causes
  4. Receive personalized recommendations

๐Ÿ’Š Drug Interactions

  1. Access the Drug Interaction Checker
  2. Input multiple medications
  3. Check for potential interactions
  4. View safety recommendations

๐Ÿ“š Medical Terminology

  1. Use the Medical Term Explainer
  2. Look up complex medical terms
  3. Get clear, simple explanations
  4. Understand your medical reports better

๐Ÿ“„ Medical Report Assistant

  1. Upload medical reports (PDF format)
  2. Ask questions about your report in natural language
  3. Get AI-powered answers and explanations
  4. Understand test results and diagnoses clearly

๐Ÿ’ฌ Healthcare Chat

  1. Start a conversation with the AI assistant
  2. Ask health-related questions
  3. Get instant, informative responses
  4. Continue conversation with context

๐Ÿ“ง Contact

Maintainer: Nikhil Raikwar
GitHub: @NikhilRaikwar
Project Link: https://github.com/NikhilRaikwar/HealthAI-Assistant


๐Ÿ™ Acknowledgments

  • Google for providing the Gemini AI API
  • The open source community for invaluable tools and libraries
  • All our amazing contributors who help make this project better

๐ŸŽ‰ Hacktoberfest 2025 Special

We're thrilled to be part of Hacktoberfest 2025! Here's what makes our project great for contributors:

๐Ÿ† Why Contribute to HealthAI Assistant?

  • ๐Ÿ’™ Real Impact: Your code helps people access healthcare information
  • ๐ŸŒฑ Beginner Friendly: Well-documented codebase with good first issues
  • ๐Ÿš€ Modern Stack: Work with React, Vite, and modern web technologies
  • ๐Ÿค Supportive Community: Friendly maintainers and contributors
  • ๐Ÿ“š Learning Opportunity: Gain experience with AI integration and healthcare tech

๐ŸŽ Contributor Benefits

  • โœ… Get your Hacktoberfest PRs merged
  • ๐ŸŽ–๏ธ Receive contributor shoutouts
  • ๐Ÿ’ผ Build your open source portfolio
  • ๐Ÿ“š Learn from code reviews
  • ๐Ÿค Join a growing community
  • ๐ŸŒŸ Get featured in our contributors section

๐Ÿ’ก Contribution Ideas for Hacktoberfest

๐ŸŒฑ For Beginners:

  • ๐Ÿ“ Fix typos in documentation
  • ๐ŸŽจ Improve UI styling and colors
  • โณ Add loading states to components
  • ๐Ÿ’ฌ Create better error messages
  • ๐Ÿ“– Add helpful code comments
  • ๐Ÿ”ง Fix mobile responsive issues

๐Ÿš€ For Intermediate:

  • ๐Ÿ†• Add new UI components
  • ๐ŸŽ™๏ธ Implement voice input feature
  • ๐Ÿ“Š Create data visualization components
  • ๐Ÿงช Write unit tests for existing features
  • โšก Optimize component performance
  • โ™ฟ Add accessibility features (ARIA labels, keyboard navigation)

๐Ÿ”ฅ For Advanced:

  • ๐Ÿ“˜ Add TypeScript type definitions
  • ๐Ÿ—๏ธ Implement advanced features (session history, export data)
  • ๐Ÿ”„ Set up CI/CD pipeline
  • ๐Ÿงช Add integration tests
  • โ™ป๏ธ Refactor complex logic for better maintainability
  • ๐Ÿ“ฑ Create Progressive Web App (PWA) support

Contributors ๐ŸŒŸ

We love our contributors! All contributors are shown below with their GitHub profile images. Your face could be here tooโ€”just contribute! ๐Ÿ˜„

๐ŸŽ‰ Thank You to All Our Amazing Contributors! ๐ŸŽ‰

Contributors

Want to see your face here? Start contributing now! ๐Ÿš€


๐Ÿ“Š Project Stats

GitHub stars GitHub forks GitHub issues GitHub pull requests GitHub contributors GitHub last commit


Code of Conduct ๐Ÿ“œ

Please be respectful and considerate in all interactions. We are committed to providing a welcoming and inclusive experience for everyone. See our Code of Conduct for details.


License โš–๏ธ

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


โญ If you like this project, please star the repo! โญ

Let's build something amazing together! ๐Ÿš€


๐ŸŽƒ Happy Hacktoberfest 2025! ๐ŸŽƒ

Quality contributions are always welcome!

Star this repo

Remember: This application provides AI-powered health information and should not replace professional medical advice. Always consult healthcare professionals for medical concerns.

Made with โค๏ธ by the HealthAI Assistant Community

About

An AI-powered healthcare assistant that provides medical information, symptom analysis, and health recommendations using Google's Gemini AI.

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 10