Form filling that survives React, Vue, Angular and Shadow DOM.
Most form fillers work on a simple login page and quietly fail on a real application. FormForge is built around the cases that break the others — and it tells you when it cannot fill something, instead of leaving you with a form that looks filled and submits empty.
- Free tier, no account
- Pro $39 USD one-time
- 7-day trial, no card
- No network calls
What makes it different
-
1. It works where other fillers give up
Values are written through the native setter and the framework's own change tracking, so your application actually registers the input instead of discarding it on the next render. That covers React, Vue and Angular controlled inputs, Shadow DOM including nested shadow roots and custom elements, same-origin iframes, rich-text and
contenteditableregions, and field names containing dots and dashes that break naive selector matching. -
2. It reports honestly when a widget cannot be filled
The failure mode that costs you an afternoon is the one where a filler writes text that looks correct and the form submits empty. Every FormForge fill returns a report showing which fields were filled, which were skipped, and which were written but then rejected by the page.
18 filled · 0 failed · 3 correctly skippedemail filled qa+4821@example.comstate filled Bavaria (react-select)city filled Munich (dependent)csrf_token skipped hidden inputcaptcha skipped never touchedorder_ref skipped readonly -
3. Modern dropdowns, including dependent ones
Fills react-select and similar custom dropdowns, including dependent ones where the second list only loads after you choose the first (State then City).
-
4. Zero host permissions at rest
FormForge holds no standing permission for any website. It cannot read or modify a page until you explicitly ask it to — by clicking the toolbar icon, pressing a keyboard shortcut, or choosing a FormForge item from the right-click menu. Chrome grants access for that action, on that tab, and revokes it immediately afterwards.
-
5. No AI, no account, no network calls
The extension makes no network calls. Nothing you see or type is transmitted anywhere, because the extension never contacts anything — no analytics, no telemetry, no tracking, no remote code, and no language model. There is no sign-up, and the free tier needs no account at all.
-
6. Email prefix addressing
Set a prefix like "qa" and every generated address becomes qa+4821@yourdomain.com, so all your test signups land in one inbox you control.
-
7. Reproducible seeded data
Set a seed and you get identical data on every run. A failing test can be reproduced exactly, with the same values, instead of a new fictional person each time.
Realistic data, not random strings
A random string in a phone field just fails validation. FormForge reads each field's type, label, placeholder, ARIA attributes and autocomplete token, then generates something that fits:
- Names, addresses and phone numbers in English, German, French, Spanish and Portuguese — matched to the page's own language automatically
- Numbers that respect
min,maxandstep - Dates inside the field's own allowed range
- Luhn-valid test card numbers
- One consistent fictional person per fill, so the filled form is readable
- Values that fit a field's
maxlengthby choosing a narrower format — a 10-character mobile field gets 5551234567, never a clipped "(555) 123-"
It never touches what it shouldn't
CAPTCHA fields, hidden inputs, disabled and readonly fields, file pickers and anything invisible are left strictly alone. Required checkboxes are always ticked, because a form that cannot submit is not filled.
Built-in self-test
Chrome updates break extensions. FormForge ships a self-test page that runs the real engine against dozens of deliberately awkward field types and tells you exactly what works in your browser build — and gives you a report you can paste into a support email.
Keyboard shortcuts
| Shortcut | Action |
|---|---|
| Alt + Shift + F | Fill every field on the page |
| Alt + Shift + D | Fill just the focused field |
Both are remappable at chrome://extensions/shortcuts.
Installing it
- Install FormForge from the Chrome Web Store. It requires Chrome 116 or later.
- Open any page with a form and press Alt + Shift + F, or click the FormForge icon in the toolbar.
- That is the whole setup. There is no account to create and nothing to configure before the first fill.
Why it asks for each permission
This is the same wording used in the Chrome Web Store review form, so you can check it against what Chrome shows you at install time.
| Permission | Why it is needed |
|---|---|
activeTab |
Grants temporary access to the single tab you are looking at, and only in response to an explicit action: clicking the toolbar icon, invoking a keyboard shortcut, or selecting a context-menu item. The access ends as soon as the fill completes. This is the narrowest permission that lets the extension function. |
scripting |
The fill engine has to run inside the page to read form fields and write values into them. It is injected into the active tab at the moment you request a fill, under the temporary access granted by activeTab. It is injected into all frames because forms are frequently split across iframes. |
storage |
Stores your own settings and content locally: data language, email prefix, theme, saved profiles and field rules, plus a few recent snapshots so an accidental change can be undone. None of it is transmitted anywhere. |
contextMenus |
Adds "Fill this form", "Fill empty fields only" and "Fill just this field" to the right-click menu. This is one of the three gestures that grant activeTab. |
| Optional: access to a specific site | Not requested at install time. You may grant a single origin permanent access from the Settings page — useful if you want fills to run on your own staging server without a gesture each time. The extension is fully functional without it, and you can revoke any origin at any time. |
Full detail is in the extension privacy policy.
Free, or $39 once
The free tier has no daily limit and no account. Pro is a single payment of US$39 that unlocks saved profiles, custom field rules, per-site rules, seeded reproducible data and exportable self-test reports. It is not a subscription — nothing renews and there is nothing to cancel.