Skip to content

nomade-care/nomade-care-ui

Repository files navigation

NomadCare - AI-Powered Medical Communication Platform

📹 Demo Video Note: The demonstration video appears in low quality when viewed on Google Drive. For the best experience, please download the video to see it in its original high-quality resolution.

NomadCare is a modern, AI-driven web application designed to bridge communication gaps between doctors and patients, especially those who speak different languages. It provides separate portals for doctors and patients to exchange audio messages, leveraging generative AI for real-time translation and external emotion detection APIs for intelligent analysis.

✨ Key Features

  • Dual Portals: Separate, tailored user interfaces for doctors and patients.
  • Audio Messaging: Doctors can record and send audio messages. Patients can listen to these messages and review their pre-recorded responses.
  • AI-Powered Translation: Doctor's messages are automatically translated into the patient's preferred language using Google's generative AI models.
  • Real-Time Emotion Analysis: Patient's audio responses are sent to an external emotion detection API that provides detected emotions with confidence scores and intelligent insights. The doctor's panel displays this information with a typewriter animation for an engaging experience.
  • Typewriter Animation: Emotional insights appear with a smooth typing effect, showing static emotion data immediately followed by the AI's intelligent analysis.
  • Simulated Conversation: The application boots up with a pre-populated, simulated conversation to demonstrate the core features without needing initial user input.
  • Responsive Design: A modern, clean UI that works seamlessly across different devices.
  • Real-Time Updates: Insights are updated instantly via direct state management, without localStorage persistence, ensuring fresh analysis for each interaction.

🛠️ Technology Stack

This project is built with a modern, full-stack TypeScript architecture.

  • Framework: Next.js (with App Router)
  • AI/Generative AI: Google AI & Genkit for creating and managing AI flows (translation, text-to-speech, and summarization).
  • External APIs: Custom emotion detection API for real-time audio analysis with intelligent insights.
  • UI: React
  • Styling: Tailwind CSS for utility-first styling.
  • Component Library: ShadCN UI for accessible and reusable components.
  • Language: TypeScript
  • Icons: Lucide React
  • Animations: Custom typewriter effect for dynamic text display.

🚀 Getting Started

Follow these instructions to get a local copy of the project up and running.

Prerequisites

  • Node.js (v18 or later)
  • npm or yarn

Installation & Setup

  1. Clone the repository (or ensure you are in the project directory).

  2. Install dependencies:

    npm install
  3. Set up Environment Variables: Create a .env file in the root of the project. You will need to add your Google AI API key for the Genkit flows to work.

    GEMINI_API_KEY=your_google_ai_api_key_here
  4. Run the Genkit Development Server: The AI flows run on a separate development server. Open a new terminal and run:

    npm run genkit:dev

    This will start the Genkit server, typically on port 3400.

  5. Run the Next.js Development Server: In your primary terminal, run the main application:

    npm run dev

    This will start the Next.js application, which by default runs on http://localhost:9002.

  6. Open the App: Navigate to http://localhost:9002 in your browser to see the application.

📹 Demo Video

A demonstration video of the application is available on YouTube: Watch on YouTube

Alternatively, the video is also available for download. Important: The video appears in low quality when viewed directly on Google Drive. For the best viewing experience, please download the video to see it in its original high-quality resolution.

📂 Project Structure

  • src/app/: Contains the main pages and layouts for the Next.js App Router (/, /doctor, /patient).
  • src/components/: Shared and feature-specific React components.
    • src/components/ui/: Auto-generated ShadCN UI components.
    • src/components/shared/: Components used across different parts of the app (e.g., Header, AudioPlayer, Typewriter for animations).
    • src/components/doctor/ & src/components/patient/: Components specific to each portal.
  • src/ai/: All Genkit-related code.
    • src/ai/genkit.ts: Genkit initialization and configuration.
    • src/ai/flows/: Genkit flows for AI-powered features like translation and emotion analysis.
  • src/lib/: Contains server actions (actions.ts), type definitions (types.ts), and other utility functions.
  • src/services/: Services for communicating with external APIs, like the emotion detection service.
  • public/: Static assets, including the logo and the sample audio files for the simulated conversation.

📹 Demo Video Reminder: Remember to download the demonstration video from Google Drive for the best quality viewing experience!

About

NomadCare is a modern, AI-driven web application designed to bridge communication gaps between doctors and patients, especially those who speak different languages.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages