In every Indian election season, there's one common pain point I kept noticing — the lack of a centralized, user-friendly source for candidate lists.
While the Election Commission releases official data, it’s often buried in scanned PDFs or fragmented across state-level sites. Political parties publish their own lists, but not in standardized formats. For most voters, journalists, and researchers, this means digging through news articles, unreliable sources, or unstructured files just to find out: who is contesting from where?
That’s the problem I set out to solve with CandidateList.live.
Background: I’m Not a Developer (Yet)
I’ve been working in SEO since 2016 and content marketing since 2019. Over the years, I’ve launched and scaled several tech blogs, so I understand how important structured data and discoverable content are — especially when users are actively searching for information.
But I didn’t know how to code. That changed in August 2024, when I decided to start learning frontend development. I began with the basics: plain HTML and CSS. Slowly, I started learning JavaScript and building small static projects — all driven by curiosity and what I now call “vibe coding” — coding based on energy and flow, not formal roadmaps.
The Idea Behind Candidate Live
As election news started building again in late 2025, I realized this was the perfect problem to solve as a beginner dev.
The goal:
- Build a simple site that organizes election candidate lists
- Keep it lightweight, responsive, and easy to update
- Make it accessible to anyone, from mobile users to journalists doing research
And I wanted to do it fast — using only the skills I had at that moment.
Building the Project in 2 Days with Cursor AI
I built the first version of CandidateList in just 2 days, powered by:
- HTML + CSS for structure and styling
- JavaScript for data rendering
- Cursor AI, an AI code editor, to help speed up logic and fix errors
- Vercel, for fast and free deployment
Here’s what the stack looked like:
Frontend: HTML, CSS, JavaScript (vanilla)
Hosting: Vercel (free tier)
AI Assistance: Cursor AI (pair programming + debugging)
Instead of building a complex backend, I kept the data in structured JavaScript arrays/objects, which are easy to update when new candidate lists are released.
I used JSON-like structures to format entries with fields like:
{
district: "Patna",
assembly_no: "120",
assembly_name: "Digha",
candidate_name: "Rajeev Kumar"
}
Then I used JavaScript to dynamically render this data into clean, accessible HTML tables categorized by:
- State (e.g., /bihar)
- Party (e.g., /jan-suraaj)
- Combined list (/list)
All pages are static, fast, and pass core web vitals benchmarks with ease.
What Candidate Live Solves
Here’s what makes CandidateList useful:
- No clutter – Just clean, searchable lists in table form
- Fast performance – Hosted statically, optimized for mobile
- Easy updates – New candidate lists can be added or modified in minutes
- Open and neutral – No ads, no political bias, just data
Whether you’re a journalist covering elections, a citizen checking your constituency, or a researcher tracking trends, the site simplifies access to fragmented election data.
Key Learnings from the Build
- Start small, solve real problems: You don’t need React or a database to build something useful. Just a clear idea and structured thinking.
- AI can be your co-pilot: Cursor AI helped me generate clean JS functions, refactor loops, and debug DOM logic — without slowing down my momentum.
- Frontend can do more than you think: Even with just HTML, CSS, and JavaScript, you can build scalable, maintainable microtools that work.
- Speed of execution matters: The MVP took just two days. If I waited to “learn more,” I’d still be procrastinating.
What's Next?
CandidateList.live is only the beginning. I plan to:
- Add search filters
- Build a mini CMS or dashboard for easier updates
- Expand the structure for Lok Sabha and local body elections in the future
You don’t have to be a professional developer to build something valuable. With basic tools, AI help, and a clear goal, you can ship real-world products — even if you’re still learning.
Candidate Live was born out of frustration — and built with curiosity, code, and two days of focused effort.
If you’re learning to code, try building for the real world. That’s where the real growth — and impact — happens.
Try it live: https://candidatelist.live/
Feel free to fork, contribute, or get inspired. The code is clean, the purpose is clear — and the internet needs more builders solving local problems.