
# Building VoterAssist: An Intent-Driven Election Guide for PromptWars π³οΈ
Simplifying the fragmented election process through AI-driven development and interactive gamification.
π The Problem: The Complexity of Civic Duty
For millions of citizens, the journey to the voting booth isn't hindered by a lack of willingness, but by a lack of clarity. Fragmented information scattered across multiple websites, confusing government forms, and ambiguity around accepted identification often lead to a phenomenon known as "voter apathy."
When the barrier to entry is bureaucratic friction, democracy suffers. I wanted to change that.
For the PromptWars Virtual Challenge 2, I built VoterAssistβan intent-driven, 4-stage guided web application designed to transform the complex electoral process into an interactive, gamified, and seamless journey.
π§ The "Intent-Driven" Approach with Google Antigravity
Traditionally, building an application starts with writing boilerplate code. For VoterAssist, I adopted an "Intent-Driven" approach.
Instead of manually typing every div and useState hook, I leveraged Google Antigravity alongside powerful models like Gemini 3.1 Pro and Claude 3.5 Sonnet to architect the system logic. By defining clear architectural intents and prompts, I collaborated with the AI to scaffold the React component tree, design the routing logic, and implement complex state management. The AI acted as a pair programmer, translating high-level civic goals into optimized code.
π Core Feature Spotlight
The tech stack is modern and lightweight: React, Tailwind CSS, and Framer Motion for fluid animations. The design system relies on the highly readable Poppins font, accented with a vibrant Zomato Red (#E23744) to draw attention to critical calls to action.
Here is a breakdown of the core features:
1. Animated Landing Page
First impressions matter. The application greets users with a sleek, Framer Motion-powered hero section. The smooth entry animations establish trust and make the platform feel like a premium, modern tool rather than a legacy government portal.
2. Dynamic Progress Tracker
To combat form fatigue, the entire registration process is gamified. Using React state, the dashboard dynamically calculates a "Voter Readiness" score.
// A snippet of the gamified progress logic
const [readiness, setReadiness] = useState(0);
const calculateReadiness = (tasks) => {
const completed = tasks.filter(t => t.isComplete).length;
setReadiness((completed / tasks.length) * 100);
};
When a user sees they are "70% Ready to Vote," psychological momentum encourages them to finish the final steps.
3. The Document Vault
Figuring out which ID to bring is a common pain point. I built a searchable "Document Vault" containing the 12 official identity documents accepted by the Election Commission. The logic maps categories to specific ID types, allowing users to quickly verify if their Aadhaar card or Student ID is valid for polling.
4. Mock Polling Locator (Pincode Intelligence)
To bridge the gap between digital registration and physical voting, VoterAssist features a Pincode-based polling booth locator.
// Mapping local pincodes to physical booth locations
const BOOTH_DATABASE = {
"533437": {
name: "Pragati Engineering College",
distance: "1.2 km away",
status: "Active"
}
};
By simply typing in 533437, the system maps the user directly to Pragati Engineering College, transforming abstract geographic data into an actionable destination.
βοΈ Technical Challenges & Optimizations
The 10MB GitHub Limit
One of the key constraints of the challenge was maintaining a small repository size (under 10MB). To achieve this:
- I strictly avoided heavy, unoptimized image assets, opting for SVGs and CSS gradients where possible.
- Heavy libraries were replaced with native browser APIs.
- External assets are served via CDNs, ensuring the Git history remains incredibly lightweight while keeping load times under a second.
State Persistence
There is nothing more frustrating than refreshing a page and losing your progress. To solve this, I implemented local persistence. Using the browser's localStorage API, VoterAssist automatically saves the user's checklist progress. If they close the tab to go find their PAN card, their "Voter Readiness" score will be exactly where they left it when they return.
π The Result
VoterAssist proves that with the right application of Generative AI and modern web frameworks, we can build tools that genuinely improve civic engagement. By removing friction, we empower voices.
Let's Build a Better Democracy
I encourage everyone to participate in the democratic process. It starts with a single step.
π Live Demo: voter-assist.vercel.app
π» GitHub Repository: SriRamCharan-dev/VoterAssist
Built with β€οΈ for PromptWars.
Tags: #PromptWars #GoogleAntigravity #BuildWithAI #SoftwareEngineering #VoterAwareness #React #WebDevelopment
Top comments (0)