Fill any web form instantly from your personal documents — locally, privately, with AI-powered suggestions and full citations.
FormBuddy reads your PDFs, passport scans, tax forms, and notes — indexes them entirely on your device — then suggests the right value for every form field you click on any website.
- Scan & Auto Fill — detects all fields on a page and fills them at once
- Every suggestion cites its source — file name, page number, exact snippet
- Works on any website — visa applications, insurance claims, tax returns, travel bookings
- Multi-page form support — tracks which fields were already filled across page navigations
- Quick Add — drag-drop files, right-click to save selected text, or take a screenshot
| What happens | Detail |
|---|---|
| Documents | Read locally via File System Access API — never uploaded |
| LLM calls | Short text snippets sent directly from your browser to your chosen AI provider |
| API keys | Stored in Chrome's encrypted chrome.storage.local — never sent to FormBuddy |
| Analytics | None. No backend server exists. |
See the full Privacy Policy.
FormBuddy uses your own API key — no FormBuddy subscription or monthly fee.
| Provider | Models |
|---|---|
| Anthropic | claude-sonnet-4-6, claude-haiku-4-5 |
| OpenAI | gpt-4o, gpt-4o-mini |
gemini-2.5-flash, gemini-2.5-flash-lite, gemini-2.5-pro |
Add to Chrome → Add to Microsoft Edge →
git clone https://github.com/steepworksai/FormBuddy.git
cd FormBuddy
npm install
npm run buildThen load the unpacked extension:
Chrome: Go to chrome://extensions → Enable Developer mode → Load unpacked → select dist/
Edge: Go to edge://extensions → Enable Developer mode → Load unpacked → select dist/
| Layer | Technology |
|---|---|
| Language | TypeScript |
| Platform | Chrome & Edge Extension — Manifest V3 |
| Build | Vite + @crxjs/vite-plugin |
| UI | React + Tailwind CSS |
| PDF parsing | pdfjs-dist + Tesseract.js (OCR) |
| LLM | Anthropic SDK, OpenAI SDK, Gemini REST |
| Folder access | File System Access API |
| Storage | chrome.storage.local |
| Testing | Vitest (188 unit tests) + Playwright (16 e2e tests) |
npm install # install dependencies
npm run dev # start Vite dev server
npm run build # production build → dist/
npm run test:unit # run Vitest unit tests
npm run test:e2e # run Playwright e2e tests
npm run test:all # build + all testssrc/
├── background/ # Service worker — session state, LLM calls
├── content/ # Content script — field detection, autofill
├── sidepanel/ # Main UI — folder manager, scan & fill
├── popup/ # Settings — API key, model selection
└── lib/
├── llm/ # Claude, OpenAI, Gemini wrappers
├── indexing/ # Document indexing pipeline
├── parser/ # PDF text extraction + OCR
└── folder/ # File System Access API helpers
Issues and pull requests are welcome. Please open an issue first to discuss significant changes.
- Fork the repo
- Create a branch:
git checkout -b feat/my-feature - Make your changes with tests
- Open a pull request
MIT © 2026 SteepWorksAi