SpliceTap taps into your app's network traffic and reroutes it. Mock, block, delay, redirect, or rewrite any request — no proxy, no backend changes, no build step.
Built for the moment the API isn't ready, the error case won't reproduce, or the network is too fast to see your loading state
Return a fully synthetic response, or let the real one through and surgically change a few fields.
null deletes a keyTarget exactly the request you mean — and nothing else — with layered match conditions.
Mock a single query or mutation on a shared endpoint without touching the rest.
operationName/graphqlResponses that change per request, so your UI never renders the same stale fixture twice.
Mocked requests never hit the network, so the Network tab can't show them. SpliceTap has its own panel that does.
No account, no backend, no telemetry. There is no server to send anything to.
chrome.storageNo config files, no restart, no rebuilding your app
Click the toolbar icon, hit Alt+Shift+N, or right-click the page — the editor
opens with the current host prefilled.
Mock, block, delay, redirect, rewrite headers, or change query params. Templates cover the common cases.
Give it a URL pattern and a method. Add header or GraphQL conditions when you need to be more surgical.
The rule takes effect immediately on matching requests. Watch it fire in the DevTools panel.
Four are handled in-page by intercepting fetch and XMLHttpRequest; two
are real network-layer edits made by the browser itself
Serve a synthetic body, status and headers — or patch just a few fields of the real one. Placeholders expand per request.
In-page interceptorfetch rejects and XHR fires error with status 0 — exactly what a
real network failure looks like to your code.
Wait a set number of milliseconds, then let the request through untouched. The honest way to find your missing spinner.
In-page interceptorRewrite the URL before it leaves. Regex patterns support $1–$9
captures, so prod can point at localhost.
Set and remove request or response headers at the network layer. Unblock CORS or override
User-Agent in one rule.
Append or remove URL parameters on the way out — handy for forcing feature flags or debug modes you can't set in the UI.
declarativeNetRequestVanilla JavaScript, no framework, no build step — the source you read is the code that runs
Current extension platform
Rule state and sync
Patches fetch and XHR
Real network-layer edits
Overlay that pages can't style
Local and session persistence
59 unit tests
JSON Merge Patch
SpliceTap is pending review on the Chrome Web Store — until it lands, install it from source in under a minute
git clone https://github.com/Nataraaj-Shanmugam/SpliceTap.git
chrome://extensions/ in Chrome or EdgeRequires Chrome or Edge 120+.
Want it sooner? Open an issue — it helps prioritise.
Frontend work stalls in predictable ways: the endpoint isn't built yet, the error path only happens in production, or the response comes back too fast to catch the loading state. The usual fixes — a local proxy, a throwaway mock server, commented-out code — all cost more than the problem is worth.
SpliceTap puts that control in the browser itself. Write a rule, and the next matching request answers however you need it to. Nothing leaves your machine, and nothing about your app has to change.
Install SpliceTap and mock your first endpoint in about thirty seconds.