Project Overview

The Census AI Data Visualizer is a sophisticated application designed to provide an AI-driven interface for querying and visualizing data from the U.S. Census Bureau API. Unlike traditional dashboards, this application allows users to interact with census data using natural language, making complex statistical information accessible to a broader audience.

Key Features

  • AI-Powered Natural Language Interaction: Leverages Google Gemini Pro to understand and process user queries in plain English, making complex U.S. Census data accessible to everyone. The AI-driven backend can interpret nuanced questions, handle various geographic scopes (like counties within a state), and even calculate derived metrics on the fly, such as unemployment rates or population gender differences.
  • Interactive Data Visualization: The frontend, built with React and Leaflet, dynamically renders interactive choropleth maps based on the AI-generated data. All data merging and rendering happen client-side for a highly responsive user experience.
  • Comprehensive and Scalable: Provides access to over 17 variables from the U.S. Census Bureau ACS 5-Year Estimates. The application is containerized with Docker and deployed on Render, ensuring it is both scalable and reliable.

Technology Stack

Backend
  • Python 3.12+, FastAPI, Uvicorn
  • Google Gemini Pro
  • U.S. Census Bureau API
  • Docker
Frontend
  • React with Vite
  • Leaflet & React-Leaflet
  • Chroma.js & Axios

Development & Deployment

The Census AI Data Visualizer is a full-stack application composed of a backend API and a frontend web interface. The Python backend handles all the heavy lifting, including natural language processing and API interactions. The React.js frontend provides an intuitive user interface. Both services are deployed on Render for public accessibility and scalability.