A lightweight Chrome/Edge extension that forces cache bypass for all requests to localhost and 127.0.0.1, so local development always loads fresh files instead of stale disk cache content.
Chrome Web Store — (pending review, link will be added on release)
Microsoft Edge Add-ons — (pending review, link will be added on release)
Or load unpacked manually (see Development below).
Chrome aggressively caches local development server responses. Even with correct server-side cache headers, you may still see "200 OK (from disk cache)" in DevTools — meaning Chrome never hit the network at all. This extension fixes that by injecting Cache-Control: no-cache and Pragma: no-cache on every outgoing request to localhost and 127.0.0.1, forcing a network revalidation every time.
- Forces fresh requests on
localhostand127.0.0.1across all ports - Covers all resource types: HTML, JS, CSS, images, XHR/fetch, WebSocket, fonts, media, and more
- Simple on/off toggle in the popup — state is saved across browser restarts
- Manifest V3, no background page, no remote code
- Collects no data whatsoever
The extension uses Chrome's declarativeNetRequest API to add two request headers to every matching request:
| Header | Value |
|---|---|
Cache-Control |
no-cache |
Pragma |
no-cache |
This instructs Chrome to always go to the network and revalidate, rather than serving cached content directly.
To load the extension locally:
- Clone or download this repository.
- Open Chrome and go to
chrome://extensions. - Enable Developer mode (top-right toggle).
- Click Load unpacked and select the repository folder.
| File | Purpose |
|---|---|
manifest.json |
MV3 manifest — permissions, icons, service worker |
background.js |
Registers/removes declarativeNetRequest rules, handles toggle messages |
popup.html |
Extension popup UI |
popup.js |
Reads/writes toggle state via chrome.storage.local |
icon.png |
Extension icon |
| Permission | Reason |
|---|---|
declarativeNetRequest |
Add no-cache request headers to localhost traffic |
storage |
Persist the enabled/disabled toggle preference |
Host: localhost, 127.0.0.1 |
Required for header rules to apply to local origins |
This extension collects no data. See PrivacyPolicy.MD for full details.