Inspiration

Public safety reporting is often reactive, fragmented, and inaccessible to many citizens—especially those with disabilities or non-English speakers. Inspired by the need for inclusive, fast, and intelligent civic engagement, we built CivixAI, an AI-powered chatbot that empowers residents of Indianapolis to report safety concerns, get emergency alerts, and access critical services with ease.


What it does

CivixAI is a conversational safety assistant that:

  • Allows residents to report incidents (e.g., fire, crime, medical emergencies, hazards).
  • Uses AI to extract key details like location, urgency, and incident type—even when users don’t mention them explicitly.
  • Provides live weather alerts, emergency contact numbers, and safety tips.
  • Supports accessibility needs with simplified responses and inclusive modes.
  • Sends real-time notifications to authorities for high-priority incidents.
  • Enables media uploads (images/videos) to provide more context for reports.
  • Offers an admin dashboard for reviewing incident logs and tracking community trends.

How we built it

  • Backend: Flask-based REST API with SQLite for persistent storage.
  • AI/NLP: OpenAI's GPT model for intent detection, incident detail extraction, and multi-language support.
  • Frontend: Chat interface using HTML/CSS with dynamic JSON-based responses.
  • Weather & Alerts: Integrated OpenWeatherMap API for real-time weather hazard notifications.
  • Email Alerts: Auto-sends high-priority incidents to city officials using SMTP.
  • File Uploads: Supports images, videos, and PDFs for richer incident context.
  • Accessibility & Language: Built-in flow adjustments based on user’s needs/preferences.

Challenges we ran into

  • Ensuring reliable AI extraction for varied natural language inputs.
  • Managing multi-modal input (text + media) without losing performance.
  • Balancing data privacy while collecting potentially sensitive incident information.
  • Making the system accessible and usable for users with impairments and different languages.
  • Handling error cases gracefully when APIs fail or users don’t provide enough detail.

Accomplishments that we're proud of

  • Built a fully functional end-to-end incident reporting system in a conversational format.
  • Developed robust fallback logic to handle incomplete user inputs.
  • Achieved a smooth integration of AI, real-time data, and civic processes.
  • Designed with accessibility and inclusivity in mind from day one.
  • Created a modular, scalable backend ready for city-wide deployment.

What we learned

  • The importance of context-aware AI in public service use cases.
  • How to design for civic tech with empathy—prioritizing accessibility, clarity, and trust.
  • Strategies for managing secure, real-time data flow between users and authorities.
  • That citizens are more likely to engage when tools feel human, conversational, and responsive.

What’s next for CivixAI

  • Mobile-first deployment for broader community reach.
  • Voice input and multilingual TTS for better accessibility.
  • Integration with 911 and local emergency systems.
  • Launching community trend dashboards for city planners and public health officials.
  • Building an open-source framework so other cities can adopt CivixAI for their needs.

Built With

  • accessibility-support
  • css
  • dotenv
  • file-upload-handling
  • flask
  • flask-cors
  • html
  • javascript
  • openai-gpt-4-api
  • openweathermap-api
  • prompt-engineering
  • python
  • session-management
  • smtplib-(smtp)
  • sqlite
  • uuid
Share this project:

Updates