Inspiration

As congressional interns, members of our team were responsible for answering constituent phone calls and logging them by hand. Every day, we listened to people share personal stories, concerns, and opinions about legislation. While every call mattered, the process of manually summarizing and organizing hundreds of conversations made it difficult to identify trends or accurately represent what an entire district was saying.

We realized that if this workflow existed in one congressional office, it likely existed in many others. We built WeThePeople to transform those individual conversations into meaningful, real-time insights that help elected officials better understand the communities they serve.

What It Does

WeThePeople is an AI-powered constituent intelligence platform that modernizes how congressional offices process constituent phone calls. Constituents simply call a phone number and share their opinion on a policy issue or piece of legislation. Our platform automatically:

  • Converts speech into text
  • Identifies the issue or bill being discussed
  • Classifies whether the caller supports or opposes it
  • Detects emotion and urgency
  • Generates a concise summary
  • Maps the caller to their congressional district
  • Correlates constituent concerns with relevant news
  • Generates AI-powered executive briefings summarizing district-wide trends and recommended actions
  • Allows staff to ask follow-up questions about constituent feedback using a local Llama 3 model
  • Displays everything on a live dashboard with interactive maps, charts, and analytics
  • Instead of manually reviewing hundreds of call logs, congressional staff receive meaningful, real-time insights that help them better understand the people they represent.

How we built it

We built WeThePeople as a full-stack, real-time constituent intelligence platform combining speech recognition, deterministic NLP pipelines, local AI inference, and live data visualization.

Our frontend uses the Web Speech API to stream speech-to-text directly into the application. Once a constituent finishes speaking, our Flask backend analyzes the transcript using a hybrid pipeline that combines deterministic rule-based classifiers with local language models.

Our backend extracts the issue being discussed, determines the caller's stance, analyzes emotion and urgency, generates summaries, matches relevant legislation, correlates current news, and produces executive briefings. We also implemented a follow-up question system powered by a local Llama 3 model running through Ollama, allowing staff to interact naturally with constituent data.

For visualization, we built an interactive dashboard using Leaflet.js, Chart.js, and official congressional district boundary data to display real-time trends, geographic insights, and district-level analytics.

Rather than relying entirely on a single LLM call, we designed a hybrid architecture that remains fast, explainable, and resilient through deterministic fallbacks.

Challenges we ran into

One of our biggest challenges was transforming unstructured, conversational speech into reliable, structured data. Constituents often speak informally, switch topics, mention legislation indirectly, or express multiple opinions in a single conversation.

Another challenge was designing a system that was both intelligent and reliable. Instead of relying solely on a language model, we built a hybrid pipeline that combines deterministic rule-based analysis with local AI inference, allowing the platform to remain functional even if an AI model is unavailable.

We also had to integrate speech recognition, backend processing, geographic mapping, live dashboards, executive briefing generation, news correlation, and local AI into a seamless real-time workflow while keeping latency low.

Accomplishments that we're proud of

We're especially proud that we built a solution for a problem we experienced firsthand while interning in congressional offices. Some accomplishments include:

  • Building a complete end-to-end system from phone call to live dashboard.
  • Automating a workflow that is still largely manual in many congressional offices.
  • Implementing issue extraction, stance classification, emotion detection, urgency analysis, and legislative bill matching.
  • Generating AI executive briefings that summarize district-wide constituent trends and recommend areas of focus.
  • Correlating constituent concerns with current news to provide additional legislative context.
  • Creating an interactive dashboard with live maps, analytics, and district-level visualizations.
  • Designing a hybrid AI architecture that combines deterministic processing with local Llama 3 inference for explainability and reliability.

What we learned

This project taught us that building meaningful AI applications requires much more than simply calling a language model.

We learned how to design hybrid AI systems that balance deterministic algorithms with language models, allowing us to improve reliability, explainability, and performance. We also gained valuable experience integrating speech recognition, REST APIs, geographic visualization, local inference with Ollama, and real-time frontend analytics into a cohesive production-ready application.

Most importantly, we learned that some of the best technology solutions come from firsthand experience solving real operational problems.

What's next for We The People

Our vision is for We The People to become the operating system for constituent communication across all levels of government. Next, we plan to:

  • Expand beyond congressional offices to state legislatures, city councils, and local governments.
  • Support additional communication channels such as voicemails, emails, text messages, and web forms to create a unified constituent feedback platform.
  • Add multilingual transcription and translation so every constituent can participate in their preferred language.
  • Integrate directly with congressional CRM and casework systems, allowing offices to adopt WeThePeople without changing existing workflows.
  • Develop longitudinal trend analysis that helps offices understand how public opinion evolves over weeks, months, and legislative sessions.
  • Build secure multi-office deployments with role-based access controls while preserving constituent privacy.
  • Our long-term goal is simple: help government move beyond counting constituent calls to truly understanding them—making democracy more responsive, transparent, and representative.

Built With

Share this project:

Updates

Submission history