User Guide
Everything you need to know about Live Resource Override.
Getting Started
Chrome / Edge
- Open
chrome://extensions(Chrome) oredge://extensions(Edge) - Enable Developer mode (toggle in top-right)
- Click Load unpacked
- Select the
live-resource-override/folder - Pin the extension to the toolbar
Firefox
- Open
about:debugging#/runtime/this-firefox - Click Load Temporary Add-on
- Select
manifest.jsonfrom the extension folder
Once published, install directly from each browser's extension store.
Creating Your First Rule
- Click the extension icon in your toolbar and click + Add Rule
- Set the Match Type to “Contains”
- Enter a URL fragment in Pattern (e.g.
app.bundle.js) - Choose Inline Code as the override type
- Paste your modified JavaScript in the code editor
- Click Save Rule
- Reload the target page — your override is active
Override Types
Inline Code
Paste or type your replacement JavaScript/CSS directly in the built-in code editor. The original resource is blocked at the network level and your code runs in its place.
Redirect URL
Point the request to a different URL (e.g. a locally-hosted file at http://localhost:8080/app.bundle.js). The browser loads your URL instead of the original.
File Upload
Select a .js or .css file from your disk. The file content is stored in extension storage and served as the replacement.
Headers
Modify request or response headers without changing the response body. Set, append, or remove headers using declarativeNetRequest modifyHeaders.
Mock Response
Return a custom response body (JSON, HTML, text, etc.) with a configurable HTTP status code and Content-Type. Ideal for mocking API endpoints.
Inject
Add new JavaScript or CSS to the page without replacing any existing resource. Configure timing: document_start, document_end, or document_idle.
URL Pattern Matching
| Type | Pattern | Matches |
|---|---|---|
Contains | app.bundle | Any URL containing “app.bundle” |
Equals | https://example.com/app.js | Exact URL match only |
Wildcard | *example.com*/app*.js | * matches any characters, ? matches one |
Regex | app\\.bundle\\.[a-f0-9]+\\.js | Full JavaScript regex |
Use the Test Pattern button in the editor to validate your pattern against real URLs before saving.
Domain Filtering
Optionally restrict a rule to specific domains. Enter comma-separated domains in the Domain Filterfield. The filter uses suffix matching — example.com matches both example.com and sub.example.com.
Leave blank to apply the rule to all domains.
Rule Groups & Organization
Assign rules to named groups to keep them organized. In the Full Editor, set the Group field when creating or editing a rule. The sidebar shows grouped rules under collapsible headers.
Groups are shared across import/export, so your team gets the same organizational structure.
Import/Export & Team Sharing
- Click Export in the popup or editor to download a
.jsonfile - Share the file via Slack, email, or your team repository
- Team members click Import and select the file
The exported JSON includes all rules, groups, and metadata. Rules are validated on import — invalid entries are rejected with a description of the issue.
Troubleshooting & FAQ
My override is not working
Ensure the rule is enabled (toggle is green), the global toggle is on, and the URL pattern matches. Use the Test Pattern feature to verify. Reload the target page after saving.
The original resource still loads
Check that the resource type in your rule matches the actual request type (script, stylesheet, xmlhttprequest). Open DevTools Network tab to verify the request type.
Override works on one site but not another
Check the Domain Filter field. If set, only matching domains will be affected. Some sites use Content Security Policy headers that may block injected scripts.
Import failed
Ensure the JSON file is valid. Each rule must have a pattern (string) and valid overrideType. Code fields are limited to 5MB per rule. Maximum 500 rules per import.
Extension icon shows "OFF"
The global toggle is disabled. Click the extension icon and toggle it back on. All rules remain saved but inactive when OFF.
Get updates
Be the first to know about new features and releases.