Inspiration Indianapolis, like many major cities, faces the challenge of effectively disseminating crucial civic information to its diverse population. The inspiration behind IndyChat stems from the need for a more accessible, efficient, and user-friendly digital bridge between the public and city services. We aimed to create a platform that simplifies access to vital information regarding local government services, transit, events, housing, education, public safety, and more, thereby fostering greater civic engagement and making Indianapolis an even more informed and connected community.

What it does IndyChat serves as a comprehensive AI chatbot platform specifically designed for the residents, workers, and visitors of Indianapolis. It provides timely, accurate, and helpful information on a wide array of city-related topics. Key functionalities include:

Interactive Chatbot: Users can ask questions about the city, ranging from general inquiries to specific safety-related concerns. Complaints/Reports: The platform enables users to easily submit complaints or report emergencies directly through the site. TTS and STT: Leveraging ElevenLabs, IndyChat offers both text-to-speech and speech-to-text capabilities for enhanced accessibility. Locations and Images: The bot can provide precise Google Maps locations and relevant images for Indianapolis landmarks and places. Admin Dashboard: A robust admin dashboard allows city officials to monitor conversations, publish important news articles, manage user complaints/reports, view user data, and upload documents to expand the chatbot's knowledge base. Chrome Extension: For quick answers and seamless interaction, a Chrome extension allows users to engage with the bot across all browser tabs. Voice Agent: A dedicated voice agent, accessible via a dial-in number, offers valuable city information and alerts users about emergencies and safety measures. How we built it IndyChat was built with a modern and efficient tech stack to ensure performance, scalability, and ease of use.

Web Frontend: We utilized Next.js (React, TypeScript, TailwindCSS) for its performance optimization, SEO capabilities, and responsive design, making the platform easily accessible on various devices. AI Backend: The core AI functionalities are powered by Dify AI. We heavily customized the prompt and system instructions to ensure highly localized and structured civic guidance, allowing the bot to understand natural language queries and generate accurate responses. Backend Web: Firebase was chosen for its robust backend services, including authentication, database, and hosting capabilities. Cloudinary was integrated for efficient image management. Hosting/Deployment: The web platform is hosted and deployed on Vercel for its seamless deployment pipeline and performance. Challenges we ran into Developing IndyChat presented several challenges:

Data Acquisition and Customization for AI: Sourcing and structuring a comprehensive knowledge base specifically for Indianapolis, encompassing various city services, regulations, and local nuances, was a significant undertaking. The highly customized prompt engineering for Dify AI also required extensive iteration and fine-tuning to ensure accurate and relevant responses for locality-specific queries. Integration Complexity: Integrating multiple third-party services like Dify AI, ElevenLabs, Firebase, and Cloudinary while ensuring seamless data flow and user experience required careful planning and execution. Real-time Updates and Scalability: Designing the system to handle real-time complaints/reports and ensure scalability for a growing user base required robust backend architecture and database management. Security and Data Privacy: Implementing secure authentication and ensuring the privacy of user data, especially for sensitive information like complaints and reports, was paramount. Accomplishments that we're proud of We are particularly proud of:

The comprehensive nature of the platform: IndyChat goes beyond a basic chatbot, offering features like complaints/reports, TTS/STT, location services, and a dedicated admin dashboard, creating a truly holistic civic engagement tool. The effective integration of advanced AI: Successfully leveraging Dify AI with highly customized prompts to deliver accurate and locality-specific information, making the chatbot genuinely useful for Indianapolis residents. The multi-platform accessibility: Providing access through a web frontend, Chrome extension, and a voice agent caters to diverse user preferences and ensures widespread reach. The intuitive admin dashboard: Empowering city officials with tools to manage content, monitor interactions, and respond to civic needs efficiently. What we learned Throughout the development of IndyChat, we gained valuable insights into:

The critical importance of domain-specific prompt engineering for AI chatbots in specialized fields like civic services. The benefits of a modular and scalable architecture when integrating multiple services and handling diverse functionalities. The nuances of user experience design for government services, emphasizing clarity, accessibility, and ease of use. The challenges and rewards of building a project that has the potential to significantly impact community engagement and public service delivery. What's next for IndyChat For the future of IndyChat, we envision:

Expanding the knowledge base: Continuously updating and expanding the chatbot's knowledge with more detailed and nuanced information about city services, regulations, and local events. Integration with city backend systems: Exploring direct integration with existing city databases and service portals to streamline processes for complaints, permits, and other civic tasks. Proactive alerts and notifications: Implementing features for the chatbot to proactively alert users about important city updates, emergencies, or personalized information based on user preferences. Multilingual support: Adding support for multiple languages to cater to Indianapolis's diverse population. Enhanced personalization: Developing features that allow for more personalized interactions based on user history and location. Mobile application: Developing a dedicated mobile application for even greater accessibility and convenience.

Built With

Share this project:

Updates