Repository navigation
deed v0.1.4
✨ Kafka support (new request type)
Deed now speaks Kafka — pick Kafka in the request-type dropdown:
- Producer — compose key / JSON value / headers, send one message, get a delivery report (topic / partition / offset / latency). Supports
acks, compression, idempotence,tombstone(null value for compacted topics), and raw librdkafka properties viaextra. - Consumer — tail one or more topics live in the response pane.
offsetReset: "earliest"+ emptygroupreads a topic from the beginning;maxMessagesstops after N records. - Cancel works even against an unreachable broker (delivery wait is sliced, honoring both the Kafka
messageTimeoutMsand the request timeout).
See the new README Kafka guide for the tab schemas.
🔧 Configuration now flows from .env
- New-request defaults (
DEFAULT_TIMEOUT_MS,VERIFY_TLS) and gRPC stream ceilings (STREAM_MAX_EVENTS,STREAM_MAX_BYTES_MB) are read from.envinstead of being hardcoded. - New key:
WS_CONNECT_TIMEOUT_MS(WebSocket handshake timeout). - Removed dead keys (
STREAM_COALESCE_MS,STREAM_UI_BUFFER_MAX_KB,SCROLLER_OVERLAY,TREE_ACTIONS_H, …) and fixed theWINDOW_MIN_WIDTHtypo. - Reminder:
.envis embedded at build time — edit + rebuild to change.
🐛 Fixes
- Long-lived streams (WebSocket / gRPC streaming / Kafka consumer) run on a dedicated thread pool — they no longer block queued normal sends.
- Body drafts are kept per request: switching body mode or requests no longer copies the wrong body / loses what you typed in a non-active mode.
- Environment editor & code-convention cleanups.
📚 Docs
- README rewritten as a user guide: what happens on Send, plus per-type instructions (HTTP body modes, gRPC reflection/.proto & streaming, WebSocket sessions, GraphQL subscriptions, Kafka producer/consumer).
🏗 Internal
- Core restructured into a clean
domain / app / infratree with an automated layering gate in the test suite; legacy layer removed, importer/exporter separated. No user-facing change — groundwork for what's next.
Install — download deed-v0.1.4-macos-arm64.zip, unzip into /Applications. The app is ad-hoc signed, so on first launch: right-click → Open → Open (or xattr -dr com.apple.quarantine /Applications/deed.app).
Full Changelog: v0.1.3...v0.1.4