A comprehensive AI-powered pediatrician assistant that provides health guidance, medication analysis, and prescription review for parents and caregivers. Built with modern web technologies and designed with a ChatGPT-like interface.
π Live Demo: https://arovi-one.vercel.app/
- Symptom Analysis: Upload images of rashes, injuries, or health concerns
- Medication Safety: Analyze prescriptions and medication information
- Health Guidance: Get advice on common childhood health issues
- Professional Tone: Warm, empathetic responses with medical accuracy
- Secure Authentication: JWT-based login system
- Session Management: Persistent chat history across sessions
- User Profiles: Personalized experience for each user
- ChatGPT-like Design: Familiar and intuitive chat interface
- Responsive Design: Works on desktop and mobile devices
- Dark/Light Theme: Toggle between themes for comfortable viewing
- Real-time Chat: Instant messaging with AI responses
- Image Upload: Drag-and-drop image support
- Multi-language Support: Available in 11 languages
- Prescription Analysis: Upload prescription images for detailed analysis
- Medication Safety: Check dosages, interactions, and age appropriateness
- Health Disclaimers: Clear medical disclaimers and safety warnings
- Emergency Guidance: Proper escalation for serious concerns
- FastAPI: Modern Python web framework for high-performance APIs
- SQLAlchemy: Database ORM for data management
- SQLite: Lightweight database for development and deployment
- Google Gemini AI: Advanced AI model for health analysis and responses
- JWT: Secure authentication with JSON Web Tokens
- Pillow: Image processing for prescription and symptom analysis
- Uvicorn: ASGI server for running the FastAPI application
- Alembic: Database migration management
- React 18: Modern JavaScript framework for building user interfaces
- TypeScript: Type-safe development for better code quality
- Axios: HTTP client for API communication
- CSS3: Modern styling with gradients, animations, and responsive design
- React Router: Client-side routing for single-page application
- React Markdown: Rich text rendering for AI responses
- Node.js: JavaScript runtime for frontend development
- npm: Package manager for frontend dependencies
- Vercel: Frontend deployment platform
- Git: Version control system
- Python 3.8+
- Node.js 16+
- Google Gemini API key
-
Navigate to backend directory:
cd backend -
Create virtual environment:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install dependencies:
pip install -r requirements.txt
-
Set up environment variables:
cp env_example.txt .env # Edit .env with your configuration -
Run the backend:
python start.py
-
Navigate to frontend directory:
cd frontend -
Install dependencies:
npm install
-
Start development server:
npm start
-
Access the application: Open http://localhost:3000 in your browser
Create a .env file in the backend directory:
# Database Configuration
DATABASE_URL=sqlite:///./database.db
# Security
SECRET_KEY=your-super-secret-key-change-this-in-production
ACCESS_TOKEN_EXPIRE_MINUTES=30
# Gemini API
GEMINI_API_KEY=your-gemini-api-key-here
# Server Configuration
HOST=0.0.0.0
PORT=8000
DEBUG=TrueThe application uses SQLite by default for development and deployment. The database file is automatically created when you first run the application.
POST /auth/register- User registrationPOST /auth/login- User login
GET /chat/sessions- Get user's chat sessionsPOST /chat/sessions- Create new chat sessionGET /chat/sessions/{session_id}/messages- Get session messagesPOST /chat/- Send message to AI
POST /prescription-analysis/- Analyze prescription images
GET /health- API health status
- Register/Login: Create an account or sign in
- Start Chat: Begin a new conversation or load existing session
- Ask Questions: Type health-related questions
- Upload Images: Share photos of symptoms or prescriptions
- Get Analysis: Receive AI-powered health guidance
- "My 3-year-old has a fever of 101Β°F, what should I do?"
- "Is this rash normal for a 6-month-old?"
- "Can you analyze this prescription for my child?"
- "What are the side effects of this medication?"
- Medical Disclaimers: Clear warnings about AI limitations
- Emergency Guidance: Proper escalation for serious symptoms
- Professional Recommendations: Always suggest consulting healthcare providers
- Age-Appropriate Advice: Tailored guidance based on child's age
IBM/
βββ backend/
β βββ start.py # FastAPI application entry point
β βββ database.py # Database configuration
β βββ auth.py # Authentication utilities
β βββ alembic/ # Database migrations
β βββ requirements.txt # Python dependencies
β βββ database.db # SQLite database file
βββ frontend/
β βββ src/
β β βββ App.tsx # Main React component
β β βββ Login.tsx # Login component
β β βββ Register.tsx # Registration component
β β βββ LandingPage.tsx # Landing page component
β β βββ languages.ts # Multi-language translations
β β βββ App.css # Styles with ChatGPT-like design
β βββ package.json # Node.js dependencies
β βββ public/ # Static assets
βββ README.md # This file
- ChatGPT-like Interface: Modern chat layout with sidebar and main chat area
- Multi-language Support: 11 languages including English, Hindi, Bengali, Telugu, Tamil, Marathi, Gujarati, Kannada, Malayalam, and Punjabi
- Dark/Light Theme: Toggle between themes with consistent styling
- Responsive Design: Works seamlessly on desktop and mobile devices
- Image Upload: Support for prescription and symptom image analysis
- Session Management: Persistent chat history and user sessions
- Backend: Add new endpoints in
start.py - Database: Update models and run migrations with Alembic
- Frontend: Create new components in
src/ - Styling: Update
App.cssfor new UI elements - Translations: Add new keys to
languages.ts
# Backend tests
cd backend
python -m pytest
# Frontend tests
cd frontend
npm testThe frontend is deployed on Vercel and accessible at https://arovi-one.vercel.app/
For production deployment:
- Environment: Use PostgreSQL for production database
- Security: Change default SECRET_KEY
- CORS: Update allowed origins for your domain
- SSL: Enable HTTPS for secure communication
- Monitoring: Add logging and health checks
# Backend Dockerfile
FROM python:3.9-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . .
CMD ["python", "start.py"]- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Medical Disclaimer: This AI assistant is for informational purposes only and should not replace professional medical advice. Always consult with qualified healthcare providers for medical decisions. The AI provides general guidance but cannot diagnose, treat, or prescribe medications.
For questions or issues:
- Create an issue in the repository
- Contact the development team
- Check the documentation
- Built with modern web technologies for optimal performance
- Designed with accessibility and user experience in mind
- Powered by Google Gemini AI for intelligent health guidance
- Deployed on Vercel for reliable global access
Built with β€οΈ for better pediatric healthcare
Visit Arovi to experience the future of pediatric health assistance.