Pulse is a performance-focused, local-first, developer-first API client built for modern development workflows. Built with Wails - Go + Svelte + TypeScript!
It unifies classic HTTP testing, gRPC, real-time streaming protocols, and event-driven systems into one clean, fast, desktop-native tool.
Currently fully supports - HTTP, gRPC, Kafka, WebSockets, SSE, gRPC Streams.
This project is actively in development and currently in Alpha.
Breaking changes, UI shifts, and feature overhauls will happen frequently.
- Multiple custom workspaces
- Each workspace keeps its own:
- Environments
- Variables
- Collections
- History
- UI layout state
- Fully locally persisted and securely encoded
- Create unlimited custom environments
- Define variables (string, JSON, secret)
- Variable substitution in URLs, headers, bodies, and streaming tools
- Automatically saved and restored
- Save HTTP requests, gRPC calls, streaming connections
- Folder support, drag & drop reordering
- Execute saved requests instantly
- Fully persisted on disk
- Every request/connection is tracked:
- Timestamp
- Method or protocol
- URL/topic/service
- Encoded local storage ensures fast access and privacy
Pulse already supports a wide set of protocols, with more being built.
- Full request builder:
- Method, URL, params
- Headers
- Authentication helpers
- Request body (raw, JSON, form-data)
- Syntax-highlighted editors
- Pretty JSON viewer for responses
- Response details:
- Status code
- Headers
- Timing
- Size
- Save requests to collections
- Fully compatible with environment variables
- Upload
.protofiles - Paste raw proto definitions
- Reflection mode (where server supports it)
- Auto-generate:
- Services
- Methods
- Types
- Editor for request messages
- Response previewer with:
- Message tree
- JSON view
- Raw proto view
A single tab where every real-time or bi-directional protocol lives together.
Supported right now:
- Custom subprotocols
- Auto reconnect
- Ping/pong settings
- Custom headers
- Send custom messages (JSON, text, binary)
- Color-coded inbound/outbound messages
- Timestamping
- Pausing & filtering message flow
- Include credentials (cookies)
- Auto reconnect
- Retry timeout
- Resume from Event ID
- Event-type filters
- Custom headers
- Upload/paste protos or use reflection
- Full stream support:
- Server streaming
- Client streaming
- Bi-directional streaming
- Auto-generated message editors
- Structured message inspector
- Dedicated logs for stream events
Full Kafka integration, designed for real developer debugging.
- Bootstrap servers
- Client ID
- Connection timeout
- SASL authentication:
- PLAIN
- SCRAM–SHA-256
- SCRAM–SHA-512
- TLS/SSL:
- Custom certs
- Skip verification option
- Auto-loads all topics
- Partition counts
- Refresh button
- Consumer groups
- Offset strategies:
- Latest
- Earliest
- Custom offsets
- Auto-commit toggle
- Start/Stop controls
- Live message log:
- Key
- Value
- Headers
- Timestamp
- Partition
- Offset
- Select topic & partition
- Key & value fields
- Custom headers
- Compression:
- none
- gzip
- snappy
- lz4
- zstd
- Acks:
- 0
- 1
- all
- All Kafka settings are saved per tab
- Collapsible panels for a clean UI
- MQTT (WS + backend TCP)
- SSE replay mode
- Secrets manager and 3rd party secrets managers integration
- GraphQL explorer (query editor + schema browser)
- TCP/UDP raw socket inspector
- Redis streams
- PostgreSQL logical replication stream viewer
- gRPC metadata inspector
- AI-assisted request generation
- Multi-window mode
- Plugin system
- Team sync features
- Cloud workspace backup
- Browser extension for capturing requests
- API testing automation runner
- Scripting
- Svelte + TypeScript
- Wails-native bridge
- Custom JSON viewer
- Monaco-powered editors
- Reactive stores for workspace state
- Go
- HTTP proxying
- WebSocket/SSE relays
- gRPC client/streaming engine
- Kafka consumer/producer pipeline
- Local encrypted storage
Pulse is not production-ready yet.
Features may break, APIs may change, and a lot of UI polish is still in progress.