Inspiration
This project grew from a conversation with my U.S. history professor. We talked about a boy participating in a politically neutral event, and the professor mentioned how rare truly neutral spaces have become. That conversation stuck with me.
At the same time, I’ve felt the personal frustration of watching people I care about turn away from politics — not because they don’t care, but because the noise, hostility, and pressure make them politically apathetic. I wanted to create a space where people can approach politics without labels or judgment, and where curiosity is enough. Legible is my attempt to build one of those spaces: calm, neutral, and civic-minded, with a vision for a better future world.
What it does
Legible is a lightweight, bias-free sandbox for exploring politics:
- Browse clear definitions of political terms.
- Explore major political theories in neutral language.
- See how conservative, moderate, and progressive groups discuss real bills.
- Take a short, lightweight quiz that estimates your point of view without assigning labels or affiliations.
The app never saves data, never asks who you are, and never tells you what you should believe.
How we built it
- Frontend: Svelte with Vite for fast, lightweight builds.
- Styling: Tailwind CSS for clean, accessible design.
- Typing & checks: TypeScript + svelte-check for safety.
- Data: JSON files for definitions, theories, and bill perspectives.
- Past iteration: We first tried a Streamlit setup, but data integration kept breaking. Refactoring into a Svelte stack gave us stability and flexibility.
- Privacy: 100% client-side, with no tracking or storage.
Challenges we ran into
- Finding solid data sources that would actually work with our stack.
- Adapting after our initial Streamlit build kept failing on data integration.
- Choosing what content to include when there’s so much to explore.
- Designing a neutral, calm experience when politics itself is loud and decisive.
Accomplishments that we're proud of
- Pulling together civics content into an app that’s both lightweight and meaningful.
- Collaborating as a team and realizing that ideas themselves are part of the labor that makes a project polished.
What we learned
- Curation is a skill: what you leave out matters as much as what you put in.
- Neutral UX matters: gentle design can change how users feel about learning.
- APIs are tricky: formats, rate limits, and integration issues can derail a plan.
- Teamwork is critical: without my teammates’ input, I couldn’t have pushed the project to a polished state.
- On a personal level, I learned that many people want to learn about politics — they just need a place that feels safe enough to try.
What's next for Legible
- Expanding the library of terms and theories, breaking them down into simpler words so even kids can explore confidently.
- Adding real-time civic APIs to pull in live bills, cases, and debates.
- Experimenting with an AI explainer mode — imagine asking about what’s on the screen and getting an answer phrased like an angsty teen (or other perspectives) to make learning fun and relatable.
- Exploring use cases in classrooms, libraries, and community spaces as a neutral civics education tool.
Built With
- css
- json
- postcss
- svelte
- tailwind
- typescript
- vite

Log in or sign up for Devpost to join the conversation.