This repo contains the UI for HTTP Toolkit, a beautiful, cross-platform & open-source HTTP(S) debugging proxy, analyzer & client.
Looking to file bugs, request features or send feedback? File an issue or vote on existing ones at github.com/httptoolkit/httptoolkit.
HTTP Toolkit is built as a single-page web application (this repo), running on top of a server that provides access to non-web functionality (e.g. running a proxy server), typically run through an electron desktop wrapper app. The core UI and the majority of HTTP Toolkit functionality all lives here, except for desktop-app specific behaviour & build configuration, or functionality that can't be implemented in a web app.
The UI is built as a TypeScript React app, using MobX for state and Styled Components for styling, with Mockttp used to manage the HTTP interception itself.
When running, the UI is typically used via app.httptoolkit.tech, even in the desktop app (it's not embedded there, but hosted standalone). It can either be used through the desktop app (which starts its own server), or users can start their own server and open the UI in a browser directly.
If you want to change the behaviour of the HTTP Toolkit in almost any way, except the low-level HTTP handling (see Mockttp), how interceptors start applications (see httptoolkit-server) or how it's packaged and distributed (see httptoolkit-desktop), then you're in the right place :+1:.
To get started:
npm install
export PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
and then re-run npm install (you may need to delete node_modules first). In this case, the integration tests won't work but that's rarely important for local development.npm start
to start the UI along with a backing httptoolkit server.
localhost:8080
to view the UI.npm run start:web
to start the UI without running a separate HTTP Toolkit serverlocalhost:8080
to view the UInpm test
- run the tests