{
  "slug": "fillmyform",
  "name": "FillMyForm: AI Form Filler & Autofill",
  "version": "1.5.0",
  "summary": "AI form filler and autofill: fill any web form in one click from your profile, generate test data, solve reCAPTCHA and hCaptcha.",
  "description": "FillMyForm fills web forms for you in one click.\n\nHOW IT WORKS\n- Detects every input, select, textarea and rich-text field on the page, including fields inside open shadow roots and frames.\n- Matches each field to your profile (name, email, phone, address, company, account, payment test data) using autocomplete hints, labels, placeholders and names. No network needed for this step.\n- Fills values the way real typing does, so React, Vue and Angular forms accept them.\n\nEMPTY VALUES, HANDLED\n- Keep a profile with your real details, or let FillMyForm generate consistent test personas: names, emails, strong passwords, dates of birth, addresses, Luhn-valid test card numbers.\n- Optional locale-consistent addresses from randomuser.me.\n\nAI FOR THE ODD ONES (optional, your own key)\n- Fields no rule can place are sent in one batch to OpenRouter using your own API key. Nothing is sent when the toggle is off.\n\nCAPTCHAS (optional, your own key)\n- Detects reCAPTCHA v2 / v3, hCaptcha and Cloudflare Turnstile and requests a token from CapSolver with your own key. You still press submit.\n\nBUILT FOR DAILY USE\n- Dark, light and system themes.\n- Multiple profiles, custom regex rules, tick-consent-box option, never touches newsletter boxes.\n- Fill history synced through your Chrome account, optional sync to your own Supabase project.\n- \"Saved so far\" counter: forms filled and time saved.\n\nPRIVACY\n- No developer server. Your data stays in your browser and Chrome sync.\n- Third-party services are contacted only with your own keys and only when you switch the feature on. Full policy at the privacy policy link.\n\nIdeal for QA engineers, developers testing signup flows, marketers filling lead forms and anyone tired of typing the same details.",
  "category": "Productivity > Workflow & Planning",
  "language": "English",
  "single_purpose": "Fill web form fields with user-provided or generated data.",
  "privacy_url": "https://fillmyform.pages.dev/privacy",
  "site_url": "https://fillmyform.pages.dev",
  "support_url": "",
  "store_url": "",
  "permissions": [
    "storage",
    "activeTab",
    "scripting",
    "tabs",
    "contextMenus",
    "webNavigation",
    "alarms"
  ],
  "host_permissions": [
    "https://openrouter.ai/*",
    "https://api.capsolver.com/*",
    "https://randomuser.me/*",
    "https://*.supabase.co/*"
  ],
  "permission_justifications": {
    "storage": "Save profiles, settings, keys and fill history in Chrome sync / local storage.",
    "activeTab": "Fill the page the user is currently viewing when they click the popup button.",
    "scripting": "Inject the content script into already-open tabs after install or update, and run the captcha callback in the page context.",
    "tabs": "Find the active tab to send the fill command and reopen a page from history.",
    "contextMenus": "\"FillMyForm: fill this page\" right-click entry.",
    "webNavigation": "List the frames of the current tab so forms inside iframes are filled too.",
    "alarms": "Periodic history sync and the daily keep-alive request when account sync is configured.",
    "https://*/*": "Forms exist on any site; the script only acts when the user triggers a fill.",
    "http://*/*": "Forms exist on any site; the script only acts when the user triggers a fill.",
    "https://openrouter.ai/*": "AI fallback with the user's own key.",
    "https://api.capsolver.com/*": "Captcha solving with the user's own key.",
    "https://randomuser.me/*": "Optional random persona data.",
    "https://*.supabase.co/*": "Optional account sync to the user's own project.",
    "Asset": "Size | Status",
    "Icon": "128 x 128 PNG | `icons/icon-128.png`",
    "Screenshots (1 to 5)": "1280 x 800 PNG | `store/screenshots/01_hero.png` .. `05_privacy.png` (regenerate: `python store/capture.py` then `python store/render.py`)",
    "Small promo tile": "440 x 280 PNG | `store/screenshots/promo_small_440x280.png`",
    "Marquee promo tile": "1400 x 560 PNG | `store/screenshots/promo_marquee_1400x560.png`"
  },
  "remote_code": false,
  "colors": null,
  "zip": {
    "name": "FillMyForm-v1.5.0.zip",
    "size": 103612,
    "sha256": "6496a65fc41aee96ad936fd82eb7ba77b7d6a3b9ccf19479a57210dc9c4fa702"
  },
  "icon": "icon-128.png",
  "screenshots": [
    {
      "name": "01_hero.png",
      "w": 1280,
      "h": 800
    },
    {
      "name": "02_fill.png",
      "w": 1280,
      "h": 800
    },
    {
      "name": "03_persona.png",
      "w": 1280,
      "h": 800
    },
    {
      "name": "04_ai_captcha.png",
      "w": 1280,
      "h": 800
    },
    {
      "name": "05_privacy.png",
      "w": 1280,
      "h": 800
    }
  ],
  "promo_small": "promo_small_440x280.png",
  "promo_marquee": "promo_marquee_1400x560.png",
  "versions": [
    "1.5.0"
  ],
  "created_at": "2026-10-16T13:00:37.075Z",
  "updated_at": "2026-10-16T13:00:37.075Z",
  "url": "https://chrome-plugins.pages.dev/p/fillmyform",
  "zip_url": "https://chrome-plugins.pages.dev/files/fillmyform/FillMyForm-v1.5.0.zip",
  "files": [
    {
      "name": "01_hero.png",
      "type": "image/png",
      "size": 110572,
      "url": "https://chrome-plugins.pages.dev/files/fillmyform/01_hero.png"
    },
    {
      "name": "02_fill.png",
      "type": "image/png",
      "size": 86050,
      "url": "https://chrome-plugins.pages.dev/files/fillmyform/02_fill.png"
    },
    {
      "name": "03_persona.png",
      "type": "image/png",
      "size": 93154,
      "url": "https://chrome-plugins.pages.dev/files/fillmyform/03_persona.png"
    },
    {
      "name": "04_ai_captcha.png",
      "type": "image/png",
      "size": 79765,
      "url": "https://chrome-plugins.pages.dev/files/fillmyform/04_ai_captcha.png"
    },
    {
      "name": "05_privacy.png",
      "type": "image/png",
      "size": 70693,
      "url": "https://chrome-plugins.pages.dev/files/fillmyform/05_privacy.png"
    },
    {
      "name": "FillMyForm-v1.5.0.zip",
      "type": "application/zip",
      "size": 103612,
      "url": "https://chrome-plugins.pages.dev/files/fillmyform/FillMyForm-v1.5.0.zip"
    },
    {
      "name": "icon-128.png",
      "type": "image/png",
      "size": 6883,
      "url": "https://chrome-plugins.pages.dev/files/fillmyform/icon-128.png"
    },
    {
      "name": "promo_marquee_1400x560.png",
      "type": "image/png",
      "size": 82205,
      "url": "https://chrome-plugins.pages.dev/files/fillmyform/promo_marquee_1400x560.png"
    },
    {
      "name": "promo_small_440x280.png",
      "type": "image/png",
      "size": 16210,
      "url": "https://chrome-plugins.pages.dev/files/fillmyform/promo_small_440x280.png"
    }
  ],
  "checklist": {
    "items": [
      {
        "id": "zip",
        "label": "Extension zip",
        "ok": true,
        "detail": "FillMyForm-v1.5.0.zip (101.2 KB)"
      },
      {
        "id": "name",
        "label": "Name, 75 chars max",
        "ok": true,
        "detail": "37 chars"
      },
      {
        "id": "summary",
        "label": "Summary, 132 chars max",
        "ok": true,
        "detail": "128 chars"
      },
      {
        "id": "description",
        "label": "Detailed description",
        "ok": true,
        "detail": "1743 chars"
      },
      {
        "id": "category",
        "label": "Category",
        "ok": true,
        "detail": "Productivity > Workflow & Planning"
      },
      {
        "id": "language",
        "label": "Language",
        "ok": true,
        "detail": "English"
      },
      {
        "id": "icon",
        "label": "Store icon 128 x 128",
        "ok": true,
        "detail": "icon-128.png"
      },
      {
        "id": "screenshots",
        "label": "Screenshots 1280 x 800 (1 to 5)",
        "ok": true,
        "detail": "5 usable of 5"
      },
      {
        "id": "promo_small",
        "label": "Small promo tile 440 x 280",
        "ok": true,
        "detail": "present",
        "optional": true
      },
      {
        "id": "promo_marquee",
        "label": "Marquee promo tile 1400 x 560",
        "ok": true,
        "detail": "present",
        "optional": true
      },
      {
        "id": "privacy",
        "label": "Privacy policy URL",
        "ok": true,
        "detail": "https://fillmyform.pages.dev/privacy"
      },
      {
        "id": "single_purpose",
        "label": "Single purpose statement",
        "ok": true,
        "detail": "present"
      },
      {
        "id": "justifications",
        "label": "Permission justifications",
        "ok": true,
        "detail": "7 permissions covered"
      },
      {
        "id": "remote_code",
        "label": "Remote code declaration",
        "ok": true,
        "detail": "no remote code"
      },
      {
        "id": "site",
        "label": "Website / support URL",
        "ok": true,
        "detail": "https://fillmyform.pages.dev"
      }
    ],
    "done": 13,
    "total": 13,
    "sensitive": [
      "scripting",
      "tabs",
      "contextMenus",
      "webNavigation",
      "alarms"
    ]
  }
}