Inspiration
Millions of people in India are eligible for government schemes they never hear about, and the official portals list criteria in formal language that is hard to match against a real life. SchemeSathi closes that gap: describe your situation the way you would tell a friend, and it tells you which schemes are actually yours — and exactly why.
What it does
Type your situation in plain English or Hinglish. A local NLP parser extracts your age, income, gender, occupation and state, and a deterministic rules engine checks 18 real government schemes rule by rule, with a per-rule trace for every scheme. Every verdict is ELIGIBLE, CLOSE, NOT ELIGIBLE or NEEDS INFO — never a bare yes or no. A what-if simulator shows what would change a CLOSE verdict, and each scheme lists the exact documents needed and the application steps.
It is fully on-device and login-free: no account, no upload, and nothing you type leaves your machine. Anything you do not mention is treated as "not mentioned", never as "no", so a scheme is never ruled out on a guess.
Scheme data is a curated snapshot as of November 2026, sourced from myscheme.gov.in. SchemeSathi is an independent demo, not a government service — always verify the current criteria on the official portal before applying.
How I built it
Built 5 November 2026 in Python, using only the standard library (stdlib http.server, with the scheme data in a single JSON file), with a Vercel serverless adaptation for the live demo. The parser, the rules engine and the what-if simulator are all deterministic, so every result can be traced rule by rule. The test suite passed 25/25 on 5 November 2026, covering the parser, the matcher, the what-if flips and trace completeness.
What I learned
How to make a rules engine explain itself: a verdict is only useful when the person can see the exact rule that decided it, and what would have to change.
Challenges I ran into
Parsing free-form Hinglish without a cloud model — including traps such as "school" not meaning an SC flag, and an income of 70,000 not meaning a senior citizen — and keeping "not mentioned" honest instead of silently assuming "no".
Note
Also entered at SLAY Hacks on 7 November 2026; it was not built exclusively for GenHacks.