δΈζ | English
A High-Performance, GPU-Accelerated Redis GUI Client Built with Rust π¦ and GPUI β‘οΈ
zedis.mp4
π€ Why Zedis?
Tired of Electron-based Redis clients that eat gigabytes of RAM just to display a JSON string, or freeze entirely when you accidentally click a key with 100,000 elements? We were too.
Zedis is built from the ground up for developers who demand native performance. Powered by GPUI (the same revolutionary rendering engine behind the Zed Editor), Zedis delivers a native, buttery-smooth 60+ FPS experience with a minimal memory footprintβeven when navigating massive databases.
β¨ Killer Features
π Blazingly Fast & Native
- GPU Rendering: Every pixel is drawn on the GPU. Experience zero-lag scrolling and instant tab switching.
- Virtual Lists: Fearlessly browse instances with millions of keys. Virtual scrolling combined with
SCANiteration ensures your UI never blocks. - Cross-Platform: A truly native feel across macOS, Windows, and Linux, complete with Light, Dark, and System themes.
π§ Smart Data Viewer
Stop manually decoding your data. Zedis automatically detects (ViewerMode::Auto) and formats your payloads on the fly:
- Auto-Decompression: Transparently unpacks
LZ4,SNAPPY,GZIP, andZSTDdata. - Rich Content Decoding:
- JSON & RedisJSON: Full read/write support with pretty-printing and syntax highlighting. Smartly computes RFC 7396 Merge Patch diffs to send minimal
JSON.MERGEcommands instead of heavy document overwrites. JSONPath filtering works on plain string keys too β query nested fields with$.user.emailor$.items[?(@.price > 100)]without needing the RedisJSON module. - Protobuf & MessagePack: Zero-config binary deserialization into readable JSON-like formats.
- Media & Hex: Native preview for images (
PNG,JPG,WEBP,SVG,GIF) and a fully editable hex view for raw binary β paste in hex (whitespace, commas, and0xprefixes are tolerated) and Zedis decodes it back into bytes on save. Bytes-per-row auto-adapts (16 / 24 / 32) to viewport width.
- JSON & RedisJSON: Full read/write support with pretty-printing and syntax highlighting. Smartly computes RFC 7396 Merge Patch diffs to send minimal
- Custom Script Viewer: Pipe any Redis value through an external shell command for fully custom decoding. Configure a shell command template with placeholders (
{KEY},{VALUE},{HEX},{RAW_FILE}) and Zedis runs it viash -c(Unix/macOS) orcmd /c(Windows), displaying stdout as the formatted value. Perfect for base64, custom binary protocols, or any tool in your$PATH. Key patterns are matched by exact, prefix, suffix, or regex rules per server. - Hash Field-Level TTL (Redis 7.4+): Set individual expiry times on specific hash fields using
HEXPIRE/HPERSISTβ no need to restructure your data model just to expire a subset of fields. - Redis Streams: Full Stream support β browse entries, live-tail new messages in real time (
XREAD BLOCK, ring-buffered so a hot stream never blows up memory), inspect Consumer Groups & Pending Entries viaXINFO, and manage groups (XGROUP CREATE/SETID/DESTROY, with a confirm guard on destroy) β all without leaving the GUI. - Bulk Paste: Add many entries to a Hash / List / Set / ZSet in one shot β paste TSV or CSV (tab preferred, comma fallback, per-cell trimmed) and Zedis fans the rows out through the normal
HSET/RPUSH/SADD/ZADDpaths. - Pub/Sub: Built-in subscribe/publish interface. Subscribe to channel patterns, receive live messages in real time, and publish directly from the GUI without switching to
redis-cli. - Local Write History: The last 10 versions of every string value you save are kept in memory per key β one click rolls a previous version back into the editor for review or restore. Purely client-side (no Redis storage cost), scoped to the session, and cleared automatically on key delete or server switch.
- RediSearch Browser (module): A dedicated panel for the
FT.*command family β list indexes viaFT._LIST, inspect schema and stats fromFT.INFO(including indexing progress andtype mismatchfailure counters that explain "0 docs" mysteries), run rawFT.SEARCHwithHIGHLIGHT/RETURN/LIMITchips, or switch toFT.AGGREGATEwith single-stageGROUPBY+REDUCE(COUNT,SUM,AVG,QUANTILE,TOLIST...). Create indexes from a structured form (HASH / JSON, prefixes, per-field SORTABLE / NOSTEM / NOINDEX), or alter / drop existing ones β all without leaving the app. Auto-hidden when the RediSearch module isn't loaded. - Functions Editor (Redis 7+): Manage server-side Lua libraries through
FUNCTION LIST / LOAD / DELETE. Cards show each library's engine, registered functions, and flags (no-writes,allow-oom, ...) at a glance; click to expand a read-only Lua viewer with proper tree-sitter syntax highlighting. Edit and "New library" share one Lua editor with line numbers, indent guides, and an explicitREPLACEtoggle for safe iteration. Auto-hidden on Redis 6.x and earlier.
π Real-Time Observability
Transform how you monitor your Redis instances with a built-in, GPU-accelerated dashboard.
- Live Metrics: Beautifully rendered, real-time charts for CPU, Memory, and Network I/O.
- Memory Analyzer: Visually hunt down BigKeys and optimize storage efficiency to prevent OOMs. Sort the Top-N table by Size / Hottest / Coldest β
OBJECT FREQorOBJECT IDLETIMEis auto-selected based on the server'smaxmemory-policy, so you can find the keys actually worth caching (or evicting) in a single click. - Cluster Health: Hover the node indicator to inspect cluster topology as a tree β masters with their slot ranges, replicas grouped beneath, plus per-replica replication lag (bytes + seconds + link state) parsed from
INFO replication. Works for Cluster and Sentinel deployments. - Deep Diagnostics: Track Slowlogs, monitor live
MONITORstreams with powerful keyword filtering, and manage active clients (CLIENT LIST/KILL) via an intuitive GUI.
π‘οΈ Enterprise-Grade Security & Productivity
- Command Palette (
βK): Keyboard-first fuzzy search over servers and navigation commands β switch connections or jump to any panel (Metrics, Performance, Memory, Config, ACL, RediSearch, Functions, Lua Scripts, Settings...) without touching the mouse. Arrow keys to move, Enter to run, Esc to dismiss. - Server Groups & Ordering: Organize connections into named, collapsible groups, reorder cards within a group, and share a single connection as JSON (credentials stripped by default β opt in to include secrets for personal backups). Collapse state persists across sessions.
- Read-Only Mode: Lock down connections to prevent accidental writes in production environments.
- ACL Management (Redis 6+): GUI for the full
ACLlifecycle β list users, view flags / commands / key patterns / channel rules, and edit via a quick-preset toolbar (Full access / Read-only / Disabled) plus toggleable chips for command categories (+@read,-@dangerous, ...) and key/channel wildcards. - Connection Safety: Tag each server (PROD / DEV / STAGING) with a colored chip surfaced in the sidebar and status bar. Dangerous commands (
FLUSHALL,FLUSHDB,CONFIG SET,SHUTDOWN,DEBUG,SCRIPT FLUSH,KEYS *, batchDEL...) are intercepted with a confirm dialog that escalates wording on PROD-tagged servers. - Data Import / Export: Dump any selection of keys (multi-select, single key, or whole folder prefix) to a framed binary file with magic header + CRC32, then restore on another instance β built on
DUMP/RESTOREso binary-safe across all key types. - Advanced Tunnels: Full support for TLS/SSL (custom CA, client certs) and SSH Tunneling (Password, Private Key, SSH Agent).
- Integrated CLI: A built-in terminal for
redis-cliallows you to leverage your command-line muscle memory without leaving the app. - Namespace Tree View: Automatically groups keys separated by colons (
:) into a nested directory tree. Right-click any folder to refresh its contents or delete all keys under that prefix in one action. Each leaf key carries a compact TTL chip β green for live TTL, red when expiring within 2 minutes, gray for permanent keys. - Multi-Select & Batch Delete: Toggle multi-select mode to mark and delete dozens of keys at once without writing a single command.
- Key Favorites & Search History: Bookmark frequently used keys for instant access and revisit recent searches from a persistent history panel.
- Auto-Refresh: Configure an automatic refresh interval for the key tree to keep your view in sync with a live, rapidly-changing Redis instance.
π¦ Installation
Ready to feel the speed? Install Zedis via your favorite package manager:
macOS
The recommended way to install Zedis is via Homebrew:
brew install --cask zedis
Windows
Bash
scoop bucket add extras
scoop install zedis
Linux (Arch)
Bash
Cargo (Cross-Platform via Source)
Bash
cargo install --locked zedis-gui
π€ Contributing
We want to make Zedis the ultimate Redis client, and we'd love your help! Whether it's adding new features, translating the UI, or fixing bugs, all contributions are welcome.
Please read our Contributing Guidelines to get started. By submitting a PR, you agree to our lightweight Contributor License Agreement (CLA).
π License
Zedis is open-source software licensed under the Apache License, Version 2.0.