← All work
Case study
ClaimHawk Extension
Chrome MV3 extension that autofills class-action claim forms on settlement-administrator sites — with iframe widget injection, submit capture, and per-field undo.
Live · Chrome Web Store submission in review
Architecture
- Manifest V3, plain JS — no build step, ships as a zipped folder
- MutationObserver for dynamically-revealed fields on SPA wizards
- Classifier reads
data-test,data-testid, ancestor MUIFormControllabels, Angularformcontrolnameandng-reflect-name - Cross-origin iframe injection via server-curated
widget_hostsregistry +chrome.scripting.registerContentScripts - ngx-mask support via
execCommand('insertText')to trigger Angular input handlers that React setter dispatch misses - Per-field undo disclosure with expandable “Show fills” UI
- Submit-event detection → confirmation capture →
mark_filedAPI call — dedupes per page so a single submit only fires once - SPA wizard support: per-path dismissal + form-fingerprint reprompt for same-URL wizards (Angular admin sites, A.B. Data etc.)
- Service-worker apex-subdomain fallback for admin hosts served from subdomains of registered admin firms (e.g.
claimform.homebuyerlitigation.com)
Why it's interesting for consulting
Most “form-filling extensions” stop at simple autofill on well-structured inputs. This one handles the messy real world: inputs with no label or name association, shadow DOM, cross-origin payment widgets, frameworks that re-render on validation, and submit flows that don't emit native events. If that sounds like your problem domain, the patterns here transfer directly. Talk to me.