Karan Raj KR

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

For
People who type the same details into form after form, and still face the long answer at the end of an application.
My part
Team lead. I mapped the architecture, worked out the business model and the pitch, shot the demo video and gave the explanation in judging. Havinash built the frontend and backend logic; he and Saagnik built Google Sign-In.
Built with
Chrome Manifest V3, React 18, TypeScript, Vite, esbuild

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.

The sample form after scan
FieldSorted asSuggested fromOn the page
Full namePersonalNot yetNot yet
EmailContactNot yetNot yet
CityAddressNot yetNot yet
Why do you want to join? (500 words)EssayNot yetNot 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.

The sample form after preview
FieldSorted asSuggested fromOn the page
Full namePersonalYour profileNot yet
EmailContactYour profileNot yet
CityAddressYour profileNot yet
Why do you want to join? (500 words)EssayWritten by your modelNot 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.

The sample form after fill
FieldSorted asSuggested fromOn the page
Full namePersonalYour profileFilled
EmailContactYour profileFilled
CityAddressYour profileFilled
Why do you want to join? (500 words)EssayWritten by your modelFilled

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
Karan Raj KR receiving the first place certificate on stage at Open Loop 2026.
Receiving 1st place at Open Loop 2026, Yenepoya, Mangaluru.

Explore FormPilot

More work