FormPilot
A Chrome extension that reads a web form, works out what each field is asking, shows you its answers, and fills them in when you agree, long answers included.
Won Open Loop 2026, a national-level hackathon
Scan, preview, fill
A sample form, to show what each step does. It is not connected to FormPilot.
Scan
Finds every input, textarea, select and ARIA field, reads its label (aria-label first, then the fieldset legend, then nearby text) and sorts it: personal, contact, address, professional, essay.
| Field | Sorted as | Suggested from | On the page |
|---|---|---|---|
| Full name | Personal | Not yet | Not yet |
| Contact | Not yet | Not yet | |
| City | Address | Not yet | Not yet |
| Why do you want to join? (500 words) | Essay | Not yet | Not yet |
Preview
Sends your profile and the field list to the model you chose. Each suggested value comes back with a confidence score, for you to check before anything is written.
| Field | Sorted as | Suggested from | On the page |
|---|---|---|---|
| Full name | Personal | Your profile | Not yet |
| Contact | Your profile | Not yet | |
| City | Address | Your profile | Not yet |
| Why do you want to join? (500 words) | Essay | Written by your model | Not yet |
Fill
Focuses each field, sets it through the native setter and fires input, change and blur, so React and Vue register the value. The session is saved to History.
| Field | Sorted as | Suggested from | On the page |
|---|---|---|---|
| Full name | Personal | Your profile | Filled |
| Contact | Your profile | Filled | |
| City | Address | Your profile | Filled |
| Why do you want to join? (500 words) | Essay | Written by your model | Filled |
The problem
Browser autofill matches field names. It breaks on React and Vue apps, and it can’t write the 500 word answer at the bottom of an application.
The pivot
We arrived to build a Raspberry Pi device. By 5 PM nothing worked, and a product doing the same already cost a quarter of ours. All three of us reached the same conclusion, scrapped six hours of work, and started FormPilot.
What it does
- Reads labels in React and Vue apps, where selectors break
- Writes essay and textarea answers
- Matches dropdown options without an exact string match
- Profiles, a vault and a fill history
- OpenAI, Claude, Gemini and Groq, with your own key
Decisions
Nothing is written before you see it
The model’s answers stop at a preview, each with its confidence. You see what will be written, and only Fill touches the page.
Your key, no relay server
Calls go straight from the browser to the provider you choose. Keys stay in the extension’s local storage, and there is no telemetry.
Outcome
First of 121 teams, scored 80/100 against the runner-up’s 60/100 by a panel of four industry judges. FormPilot has since been published on the Chrome Web Store.
- Event
- Open Loop 2026, Yenepoya, Mangaluru, 25 and 26 April
- Field
- 14+ states, 109 colleges, 121 teams, 309 participants
- Score
- 80/100, against the runner-up’s 60/100
- Prize
- ₹20,000
- Now
- Published on the Chrome Web Store

Explore FormPilot
- Chrome Web Store (opens in a new tab)chromewebstore.google.com
- Website (opens in a new tab)form-pilot.netlify.app
- Source (opens in a new tab)github.com
- The story (opens in a new tab)karanrajkr.hashnode.dev
More work
- Client Onboarding ManagerDrafts quotations, raises GST invoices and chases payments for KĀRYO.Live, in progress
- School ERPRuns a school on one dataset: students, fees, exams, parents, and questions in plain language.Live demo
- crewai-recipesMulti-agent workflows you watch run in the browser before you clone them.Maintainer
- EligentTells students which opportunities they don’t qualify for, and quotes the clause.Prototype