An intelligent, interactive assistant designed to clear voter confusion by providing real-time election timelines, registration steps, and polling locations.
- Interactive Voter Bot: Parses complex civic data into easy-to-follow, step-by-step guides.
- Real-time API Integration: Powered by the Google Civic Information API.
- Search History Tracking: Uses an SQLite database to maintain a record of voter inquiries.
- Responsive UI: A clean, accessible interface built with Tailwind CSS.
- Backend: Python (Flask)
- Database: SQLAlchemy (SQLite)
- Frontend: HTML5, Tailwind CSS, JavaScript (Fetch API)
- Config: YAML-based application settings
app/services/: Logic for Google Civic API communication.app/routes/: Interactive bot logic and explanation generation.app/models/: Database schema for recording user interactions.config/: Centralized configuration for host, port, and API settings.
- Clone the repository.
- Create a
.venvand runpip install -r requirements.txt. - Add your
GOOGLE_CIVIC_API_KEYto a.envfile. - Run
python main.pyand visithttp://localhost:5005.