"The future of voting education is here — AI-powered guidance for every citizen."
https://vote-smart-jakwy9nrd-virakshi07s-projects.vercel.app/
VoteSmart AI is a modern, AI-driven web application that transforms the way citizens — especially first-time voters — learn about and navigate the electoral process. Gone are the days of confusing government pamphlets and overwhelming bureaucratic jargon.
With VoteSmart AI, users get:
- 🤖 Real-time AI answers to any voting-related question
- 📋 Structured step-by-step guidance through registration and voting
- ✅ Interactive checklists to ensure voters are fully prepared
- 🧠 Quizzes to test and reinforce knowledge before election day
Meet Election Buddy, your personal voting assistant. Powered by Google Gemini AI, it answers real-time questions about voter registration, eligibility, ID requirements, polling procedures, and more — in plain, friendly language.
💡 Built-in fallback responses ensure reliability even during API quota limits, so users are never left without guidance.
A clear, visual, step-by-step walkthrough of the entire voting process — from registration to casting your ballot. No confusion, no guesswork.
An A-Z reference of electoral terms and concepts, explained in simple language perfect for first-time voters.
A smart, actionable checklist to help voters gather required documents and complete every step before election day.
An engaging quiz experience that tests your voting knowledge and ensures you're 100% prepared when it counts.
| Audience | How VoteSmart AI Helps |
|---|---|
| 🧑 First-time voters | Demystifies the entire voting process from scratch |
| 🌍 New citizens | Explains local electoral procedures clearly |
| 🏫 Students & educators | A trustworthy civic education resource |
| ♿ Accessibility-focused users | Simple language and intuitive UI for all |
┌─────────────────────────────────────────────────┐
│ VoteSmart AI │
├────────────────┬────────────────────────────────┤
│ Frontend │ React + TypeScript + Vite │
│ Styling │ Tailwind CSS │
│ Animations │ Framer Motion │
│ Backend │ Vercel Serverless Functions │
│ AI Model │ Google Gemini AI │
│ Deployment │ Vercel │
└────────────────┴────────────────────────────────┘
- React + TypeScript — Type-safe, component-driven UI for reliability
- Vercel Serverless — API keys stay secure server-side; no exposure to the client
- Google Gemini AI — State-of-the-art conversational AI for accurate, helpful responses
- Framer Motion — Smooth, polished animations for a premium user experience
- Node.js
v18+ - npm or yarn
- A Google Gemini API key from aistudio.google.com
git clone https://github.com/your-username/votesmart-ai.git
cd votesmart-ai/election-buddynpm installCreate a .env file in the root of election-buddy/:
GEMINI_API_KEY=your_gemini_api_key_herenpm run devVisit http://localhost:5173 in your browser. 🎉
The backend uses Vercel serverless functions. To test locally:
npm install -g vercel
vercel devvotesmart-ai/
└── election-buddy/
├── api/
│ └── chat.ts # Serverless function — AI integration
├── src/
│ ├── components/
│ │ └── ChatbotFAB.tsx # Floating AI chatbot UI
│ ├── pages/ # Process Guide, Glossary, Checklist, Quiz
│ ├── services/
│ │ └── geminiService.ts # API communication layer
│ └── App.tsx
├── .env # Local environment variables
├── vite.config.ts
└── package.json
- 🔑 API keys are never exposed to the client — all AI calls go through secure serverless functions
- 🛡️ Graceful error handling — if the AI service is unavailable, users receive a friendly fallback message
- ⚡ Rate limit resilience — the app handles quota errors gracefully without crashing
Contributions are what make open source amazing! Here's how to get involved:
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
Please read CONTRIBUTING.md for our code of conduct and contribution guidelines.
- 🌐 Multi-language support
- 📍 Location-based voting information
- 📱 Progressive Web App (PWA) support
- 🔔 Election day reminders
- 📊 Voting statistics dashboard
