Skip to content

kanav333/IndyVerse

Repository files navigation

IndyVerse

IndyVerse Response is a hackathon-built AI emergency coordination prototype that uses an iPhone camera/audio feed to detect incidents like falls, person-down events, distress signals, and possible altercations, then generates a live incident card, recommends responders, and suggests the most appropriate medical destination through a dashboard.


Overview

This project is designed as a real-time emergency monitoring and response-support prototype for hackathon use.

It is not a production dispatch platform.

It is an AI-assisted system that:

  • ingests live video/audio from an iPhone
  • runs emergency detection
  • creates a structured incident
  • recommends responders
  • recommends an appropriate hospital / urgent care destination
  • displays everything in a live dashboard
  • can optionally narrate alerts with ElevenLabs voice
  • can use Gemini API for polished incident summaries
  • can store incidents in MongoDB Atlas
  • can be deployed to Vultr if local networking becomes limiting

The intended demo is:

iPhone camera -> backend -> AI detection -> incident engine -> Gemini summary -> dashboard -> responder/hospital recommendation -> optional ElevenLabs voice alert


Problem

Emergency situations often depend on a bystander noticing the event and calling for help.

That creates delays in cases like:

  • falls
  • collapse
  • person lying motionless
  • distress calls
  • public altercations

Our prototype explores how AI can act as a faster detection and coordination layer by transforming raw camera/audio input into operationally useful incident alerts.


Solution

IndyVerse Response turns a live or prerecorded feed into an incident workflow.

The system:

  1. captures camera frames from an iPhone
  2. sends them to a backend over local Wi-Fi or hosted endpoint
  3. runs computer vision / audio detection
  4. generates a structured incident
  5. scores severity
  6. recommends responders
  7. recommends a medical destination
  8. optionally uses Gemini to create a clear incident summary
  9. optionally uses ElevenLabs to create a spoken alert
  10. pushes the incident to a real-time dashboard for human review
  11. stores incident history in MongoDB Atlas

This keeps a human operator in the loop.


Finalized MVP

Included in MVP

  • mobile camera page on iPhone
  • real-time or near-real-time frame streaming
  • backend ingestion
  • incident detection for:
    • fall / collapse
    • person down
    • motionless person
    • possible altercation (stretch)
  • optional distress audio support
  • incident card generation
  • severity scoring
  • responder recommendation
  • hospital recommendation
  • live dashboard
  • operator confirm / reject
  • basic incident history / analytics
  • optional Gemini summary generation
  • optional ElevenLabs voice alert generation
  • optional Vultr deployment
  • MongoDB Atlas persistence

Not in MVP

  • actual emergency dispatch integration
  • production auth
  • deep cloud orchestration
  • perfect action recognition
  • large custom-trained ML system
  • hospital system integration
  • forced blockchain usage

Hackathon Architecture

On iPhone

  • Safari / Chrome web app
  • captures camera feed
  • sends frames to backend

On Backend (Laptop or Vultr)

  • backend server receives frames
  • AI model processes them
  • incident engine makes decisions
  • Gemini API can summarize incidents
  • ElevenLabs can narrate alerts
  • MongoDB Atlas stores incidents
  • dashboard frontend displays alerts

Communication

  • same Wi-Fi for local demo
  • local IP address for quick testing
  • real-time socket connection
  • optional hosted endpoint via Vultr

Tech Stack

Frontend

  • React
  • TypeScript
  • Vite
  • Tailwind CSS
  • Socket.IO client
  • Leaflet or Google Maps

Mobile Camera Input

  • browser camera APIs (getUserMedia)
  • canvas frame extraction
  • socket / HTTP upload

Backend

  • Node.js
  • Express
  • Socket.IO

AI / Computer Vision

  • Python
  • OpenCV
  • pretrained or lightweight inference logic
  • rule-based incident fusion

LLM / Incident Summary

  • Google Gemini API

Used for:

  • incident summary generation
  • readable operator explanation
  • short post-incident summary

Voice / Audio Output

  • ElevenLabs

Used for:

  • narrated incident alerts
  • spoken dashboard briefing
  • optional demo voice output

Database

  • MongoDB Atlas

Used for:

  • incident storage
  • event logs
  • review state
  • analytics history
  • hospital recommendations

Deployment

  • Vultr

Used for:

  • backend hosting if needed
  • dashboard hosting if needed
  • remote demo reliability

Not Currently Used

  • Solana is not part of MVP because it does not naturally fit the current emergency-response workflow

Why These Technologies Fit

Gemini API

Gemini is used after structured detection to convert technical outputs into clean, human-readable summaries. It helps the product feel more operational and polished.

ElevenLabs

ElevenLabs gives the system a voice. Instead of only visual alerts, the dashboard can also announce important incidents in a natural way.

MongoDB Atlas

Incident records are document-like, making MongoDB Atlas a good fit for storing incidents, summaries, status updates, and review history.

Vultr

Vultr provides a practical hosting option if the team wants a reliable demo URL instead of depending entirely on local Wi-Fi.


How It Works

1. Camera Input

An iPhone opens the mobile camera page in Safari or Chrome.

The page:

  • asks for camera permission
  • starts video preview
  • captures frames periodically
  • sends them to the backend

2. Frame Ingestion

The backend receives frames over local network or hosted connection.

The backend:

  • tags frames with timestamp and camera ID
  • forwards them to the inference layer

3. AI Detection

The AI layer checks for:

  • fall / collapse
  • person down
  • motionless person
  • distress audio
  • possible altercation

4. Incident Generation

The incident engine fuses detections and creates:

  • incident type
  • severity
  • responder recommendation
  • hospital recommendation

5. Summary and Voice Layer

  • Gemini can generate a readable incident summary
  • ElevenLabs can optionally turn that summary into a spoken alert

6. Dashboard Display

The dashboard updates live and shows:

  • incident queue
  • severity
  • map location
  • recommendation details
  • operator confirmation actions
  • optional voice playback

7. Persistence

Incidents and review updates are stored in MongoDB Atlas for history and analytics.


Main Features

Real-Time Incident Detection

Detects likely emergency situations from camera/audio input.

Incident Command Card

Turns raw detections into an actionable alert with severity, confidence, and summary.

Responder Recommendation

Suggests the appropriate response type such as:

  • EMS
  • EMS + Police
  • Fire + EMS
  • Monitor only

Destination Recommendation

Suggests the most appropriate hospital / urgent care destination with ETA.

Gemini-Powered Summary

Converts structured AI output into a concise, readable operator-facing summary.

ElevenLabs Voice Alert

Narrates high-priority incidents so the system can literally speak alerts.

Human-in-the-Loop Review

Allows an operator to confirm, reject, or mark an incident as false positive.

Incident History / Analytics

Tracks previous incidents and system activity using MongoDB Atlas.


Team Roles

Developer 1 — Camera + AI

Owns:

  • mobile camera page
  • frame sending
  • AI detection output

Developer 2 — Backend + Incident Engine

Owns:

  • backend server
  • incident creation
  • severity logic
  • responder recommendation
  • hospital recommendation
  • MongoDB Atlas integration

Developer 3 — Dashboard Frontend

Owns:

  • main dashboard
  • incident queue
  • incident details
  • confirm/reject workflow
  • optional voice playback UI

Developer 4 — Sponsor Tech / Data / Demo Reliability

Owns:

  • Gemini integration
  • ElevenLabs integration
  • hospital data
  • ETA / route logic
  • Vultr deployment if used
  • prerecorded backup demo

Suggested Folder Structure

indyverse-response/
│
├── frontend/
│   ├── src/
│   │   ├── components/
│   │   ├── pages/
│   │   ├── hooks/
│   │   ├── services/
│   │   ├── types/
│   │   └── App.tsx
│   └── package.json
│
├── mobile-camera/
│   ├── src/
│   │   ├── pages/
│   │   ├── hooks/
│   │   ├── services/
│   │   └── App.tsx
│   └── package.json
│
├── backend/
│   ├── src/
│   │   ├── routes/
│   │   ├── sockets/
│   │   ├── services/
│   │   ├── engine/
│   │   ├── integrations/
│   │   │   ├── gemini/
│   │   │   ├── elevenlabs/
│   │   │   └── mongodb/
│   │   ├── data/
│   │   ├── types/
│   │   └── index.ts
│   └── package.json
│
├── ai/
│   ├── inference/
│   ├── models/
│   ├── utils/
│   └── main.py
│
├── data/
│   ├── hospitals.json
│   ├── incidents.mock.json
│   └── cameras.json
│
├── demo-assets/
│   ├── videos/
│   ├── screenshots/
│   └── test-scenarios/
│
├── README.md
└── CLAUDE.md

About

Your friendly neighborhood security AI assistant

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors