[//]: #@corifeus-header # ๐Ÿ“ก P3X Redis UI: A highly functional and convenient database GUI that fits in your pocket, accessible on both responsive web and desktop applications [//]: #@corifeus-header:end # P3X Redis UI Features ## Triple GUI: Angular + React + Vue Originally built with AngularJS, fully migrated to three modern frontends โ€” **Angular**, **React/MUI**, and **Vue/Vuetify** โ€” all at full feature parity. Switch live in **Settings โ†’ GUI**. - **Angular** (`/ng/`) โ€” Angular CLI with esbuild, CDK virtual scrolling, standalone components with signals - **React** (`/react/`) โ€” Zustand, @tanstack/react-virtual, MUI, Vite - **Vue** (`/vue/`) โ€” Pinia, Vue 3 Composition API, Vuetify, Vite - `/` auto-redirects to your last used frontend - **Shared:** same Socket.IO protocol, same translations, same 7 themes (4 dark + 3 light), Web Worker tree building, Playwright E2E tests - Works in the Electron desktop app, Docker, and standalone server ## AI-Powered Redis Query Translation Type plain language in the console โ€” AI translates to Redis commands, you review and run. - **Multi-command + EVAL scripts** placed in textarea for review before execution - **Context-aware** โ€” Redis version, modules, RediSearch indexes, current page, connection, database - **Agentic tool-use** for investigation prompts ("why is memory high?") โ€” AI calls safe read-only Redis tools (INFO, MEMORY STATS, SLOWLOG, SCAN, ACL WHOAMI) and surfaces every call in console scrollback - **AI Cheatsheet** โ€” categorized prompts grouped by feature (diagnostics, keys, types, RedisJSON, RediSearch, TimeSeries, Bloom, VectorSet, scripting, cluster, ACL); module- and version-aware - **Stop button** to cancel running AI queries instantly - **Bring your own key** โ€” free Groq key at [console.groq.com](https://console.groq.com) - **`ai:` prefix** explicitly triggers AI translation | Settings AI | Console Toggle | `ai:` prefix | Auto-detect on errors | |---|---|---|---| | Disabled | Hidden | Off | Off | | Enabled | ON (default) | Works | Works | | Enabled | OFF | Works | Off (instant errors) | See [AI Configuration](ai.md) for setup, readonly mode, and CLI flags. ## Connection Resilience - **Auto-reconnect** โ€” server disconnect shows a spinner overlay, Socket.IO retries - **Seamless recovery** โ€” page reloads and reconnects to the same Redis instance when server returns ## Compatibility - **Redis 6+ with TLS** โ€” see [Configuring Redis TLS](https://spin.atomicobject.com/2021/08/05/configuring-redis-tls/) - **Pika compatible** (not fully optimized) - **SSH tunneling** for single instances, cluster, and sentinel - **Env vars:** `P3XRS_PORT`, `P3XRS_DOCKER_HOME` ## Data Handling - **Auto data decompression** โ€” detects and decompresses GZIP, ZIP, zlib/deflate, Zstandard, LZ4, Snappy, Brotli. Shows a compression badge with algorithm + ratio. Only decompresses valid text โ€” binary uploads stay untouched. Works for string, list, hash, set, sorted set - **Value format toggle** โ€” Raw, JSON, Hex, Base64 display for all key types (display-only) - **Hex dump viewer** โ€” proper hex editor layout (address, 16 bytes/line, ASCII) - **JSON pretty-print** โ€” auto-formats valid JSON - **Base64** โ€” Unicode + binary via TextEncoder - **Binary data** โ€” download button for binary content; large values (>256 kB) shown as `[object ArrayBuffer]` ## Editing Safety - **Diff view before save** โ€” optional inline/side-by-side comparison before commit (string, hash, list, JSON; toggle in Redis Settings, default off) - **Undo after save** โ€” toast with Undo button after saving string/JSON keys, restores previous value ## Key Export / Import - **Export** โ€” keys as JSON file, all types, base64 binary, TTL preserved - **Search-aware** โ€” exports only matching results when search is active - **Import** โ€” preview dialog with translated types, virtual scrolling, conflict handling (overwrite/skip) - **Hamburger menu** โ€” `โ‹ฎ` in tree controls toolbar; menu label shows count + scope - **Bulk delete** โ€” delete all keys matching current search; `FLUSHDB` when no search ## Real-Time Monitoring (Pulse / Profiler / PubSub) ### Pulse โ€” Live Dashboard - **Live metrics** every 2s โ€” memory (used, RSS, peak, fragmentation), ops/sec, connected/blocked clients, hit rate, network I/O, expired/evicted keys - **Info cards** โ€” server (OS, port, PID, config, CPU), persistence (RDB, AOF), replication (role, replicas, master), keyspace per-db, loaded modules + versions - **uPlot charts** (~35 KB canvas) for memory, ops/sec, clients, network I/O โ€” theme-aware - **Slow log** + **client list** (kill button, idle time, current command) + **memory top keys** (top 20 by bytes) - **Auto-refresh** + **pause/resume** without leaving the page - **Export** โ€” overview, dashboard info, charts (PNG), slow log, client list, top keys; Export All bundles to ZIP (TXT + PNG + PDF) ### Profiler โ€” Real-Time Command Stream - **Redis MONITOR** via dedicated connection โ€” every command in real time - Timestamp (ms), database, source IP, full command + args - Max 66 DOM entries (smooth scrolling), 10,000 in memory, last 100 in localStorage - Export all entries as text ### PubSub โ€” Channel Message Monitoring - **Pattern subscription** via `PSUBSCRIBE` (default `*`) - Same 66 DOM / 10,000 memory / 100 localStorage limits as Profiler - Restart with new pattern without leaving page ### Analysis โ€” Memory Analysis Dashboard - **One-click snapshot** โ€” type distribution, memory per namespace, expiration stats, INFO memory breakdown - **Type distribution chart** โ€” keys + memory per data type - **Memory by prefix** โ€” group keys by first `:` segment, ranked by memory - **Key expiration** โ€” count with TTL vs persistent + average TTL (humanize-duration) - **Memory breakdown** โ€” total, RSS, peak, overhead, dataset, Lua, fragmentation, allocator - **Configurable scan** โ€” Top N + Max Scan Keys - **Export All** โ€” `{connection}-analysis.zip` with full report + chart PNGs - Theme-aware bar charts redraw on theme/resize ## User Interface - **Responsive** โ€” phones, tablets, desktops - **7 themes** โ€” Light, Enterprise, Redis (light) + Dark, Dark Neu, Darko Bluo, Matrix (dark) โ€” auto-switch follows system preference in real time - **Info page** โ€” keyboard shortcuts, about, supported languages - **Command palette** โ€” VS Code-style (`Ctrl+K` in Electron) with search + keyboard nav - **Tree view** โ€” adjustable key count (100โ€“100,000), virtual scrolling - **Smart tree memory** โ€” expanded/collapsed state saved per connection + database in session storage ### Keyboard Shortcuts (Electron Desktop) | Shortcut | Action | |----------|--------| | `Ctrl+R` / `F5` | Refresh current view | | `Ctrl+F` | Focus search input | | `Ctrl+N` | New key dialog | | `Ctrl+K` | Command palette | | `Ctrl+D` | Disconnect | ## Connection Management - **Connection groups** โ€” named, collapsible, in Settings - **Drag-and-drop** reorder - **Group toggle** โ€” persisted in localStorage - **Group field** with autocomplete from existing groups ## Console and Search - **Global console drawer** โ€” bottom slide-up, accessible from any page (footer button or **Ctrl+`**); preference persists per-connection - **Multi-line input** โ€” Shift+Enter newline, Enter executes; sequential lines = sequential commands; multi-line `EVAL`/`EVALSHA` sent as single command (Lua newlines preserved); auto-grow up to 3 lines - **Command history** โ€” Shift+ArrowUp/Down - **AI multi-line** โ€” generated commands placed in textarea for review - **Channel monitoring** toggle โ€” last 20 entries in localStorage - **Search modes** โ€” client-side for small key sets, server-side for large; prefix or substring ## Networking - **Sub-directory support** โ€” Nginx/Ingress path rewriting ([Issue #43](https://github.com/patrikx3/redis-ui/issues/43)) - **Cluster** โ€” continuously improving, contributions by [@devthejo](https://github.com/devthejo) ## RediSearch Full-Text Search - **Search page** โ€” full-text UI with index selector, query input, paginated results - **Index management** โ€” schema builder (TEXT, NUMERIC, TAG, GEO, VECTOR), drop with confirm - **Index info** โ€” metadata + statistics - **Module-aware** โ€” appears when `search` module is loaded (Redis 8+ or Redis Stack) ## RedisTimeSeries Visualization - **Auto-detection** โ€” UI appears when `timeseries` module loads - **Interactive uPlot chart** โ€” theme-aware, responsive, locale-aware time formatting via `Intl` - **Live auto-refresh** (10s interval) - **Time range + aggregation** โ€” avg, min, max, sum, count, first, last, range, std.p, std.s, var.p, var.s with configurable time buckets - **Data point management** โ€” add/edit/delete with confirm; inline add form below chart - **Bulk edit** โ€” monospace textarea, `timestamp value` per line, `*` auto-spread by interval (1sโ€“24h) - **Bulk generate on create** โ€” formula generator (sin, cos, linear, random, sawtooth) with point count, amplitude, offset - **TS.INFO panel** โ€” retention, samples, memory, chunks, duplicate policy, labels, compaction - **Labels editor** โ€” `TS.ALTER` for retention, duplicate policy, labels - **Default labels** โ€” auto `key=` for discoverability - **Multiple series overlay** โ€” comma-separated keys - **TS.MRANGE label filter** โ€” query by label (e.g. `sensor=temp`), overlay matching series with different colors - **Export chart as PNG** โ€” proper background, title, color legend - **Tree integration** โ€” chart-area icon, totalSamples count ## Redis 8 Module Support (ReJSON) - **View, create, edit, format, copy, download** JSON documents (`JSON.SET`) - **Module auto-detection** via `MODULE LIST` - **Inline JSON tree** โ€” expandable, syntax-colored - **CodeMirror editor** โ€” syntax highlighting, GitHub dark/light, line wrapping toggle, code folding ## RedisBloom Probabilistic Data Structures - **5 types** โ€” Bloom filter, Cuckoo filter, Top-K, Count-Min Sketch, T-Digest - **Module auto-detection** (`bf`) - **Info display** โ€” capacity, size, error rate, items inserted, etc. - **Inline actions** โ€” add items, check membership, query counts/quantiles, list top items - **Smart defaults** on creation โ€” error rate, capacity, K, width, depth, decay, compression - **Console hints** โ€” autocomplete for BF.*, CF.*, TOPK.*, CMS.*, TDIGEST.* ## Redis 8 VectorSet Support - **Native vector type** โ€” Redis 8 built-in (no module required) - **VINFO** โ€” dimensions, element count, quantization, projection - **Element browser** โ€” paginated, search, attribute inspection, delete - **Similarity search** โ€” by element name or raw vector with COUNT; results show similarity scores - **Add elements** โ€” `VADD` inline form (name, vector, optional attributes) - **Console hints** โ€” VADD, VSIM, VCARD, VDIM, VGETATTR, VSETATTR, VREM, VINFO, VLINKS - **VSIM IN filter** (Redis 8.2+) โ€” narrow results by attribute values ## Redis 8.x Advanced Features - **Per-field hash TTL** (8.0+) โ€” `HEXPIRE`; live countdown with color stages (green >1h, yellow <1h, red <5min, pulsing <30s) - **String digest** (8.4+) โ€” `DIGEST` button on string keys - **Hybrid search** (8.4+) โ€” `FT.HYBRID` toggle on search page; combine text + vector via Reciprocal Rank Fusion - **Cluster slot stats** (8.2+) โ€” top slots by keys / CPU / memory via `CLUSTER SLOT-STATS` - **Console autocomplete** for HGETEX, HSETEX, HGETDEL, HTTL, HEXPIRE, HPERSIST, MSETEX, XDELEX, XCFGSET, DIGEST, FT.HYBRID, CLUSTER SLOT-STATS, CLUSTER MIGRATION - **Version-gated UI** โ€” features auto-show/hide based on Redis server version ## ES Modules Backend Server fully migrated from CommonJS to **ES Modules** (`.mjs`) โ€” native Node.js ESM, better tree-shaking. ## ACL Management (Redis 6.0+) - **User list** โ€” status, current user indicator, rules summary - **Create / Edit / Delete** via dialog with chip-based rule editing - **Chip inputs** โ€” commands, key patterns, pub/sub channels with placeholder hints - **Deny highlighting** โ€” commands starting with `-` shown in warning color - **Default user warning** โ€” inline alert when editing the `default` user - **Save confirmation** โ€” themed confirm dialog - Identical chip styling, layout, behavior across Angular, React, Vue ## Security Passwords and sensitive data protected with unique identifiers for both main and node configurations. [//]: #@corifeus-footer --- # ๐ŸŒ Meet Assistant SaaS โ€” meeting.corifeus.com Don't want to install anything? Try the **hosted version** at **[meeting.corifeus.com](https://meeting.corifeus.com)** โ€” full meeting workflow built for European businesses, no setup, no API key, no command line. What the hosted version offers: - **21-language live translation** during the meeting - **AI summaries, action items, decisions, attendees, key quotes** auto-generated after every meeting - **Custom vocabulary** โ€” your client / company / industry terms corrected automatically (Pro+ tier) - **Searchable meeting library** โ€” find any decision or promise across all your past meetings - **Shareable read-only links** โ€” send a clean meeting summary to a client or teammate, no signup needed on their end - **One-click email summary** after each meeting - **Premium engine on every plan** โ€” no downgraded model, ever - **EU billing** โ€” Stripe Tax + VAT-compliant + EUR-priced (Solo โ‚ฌ19.99 / Pro โ‚ฌ39.99 / Business โ‚ฌ99.99 per month, no lock-in) - **GDPR-compliant by default** โ€” browser-language auto-detection, no tracking cookies, your meetings stored encrypted Try the live demo (1 minute free, no signup) or browse the **public sample meeting** at [meeting.corifeus.com/sample](https://meeting.corifeus.com/sample). --- # Corifeus Network AI-powered network & email toolkit โ€” free, no signup. **Web** ยท [network.corifeus.com](https://network.corifeus.com) **MCP** ยท [`npm i -g p3x-network-mcp`](https://www.npmjs.com/package/p3x-network-mcp) - **AI Network Assistant** โ€” ask in plain language, get a full domain health report - **Network Audit** โ€” DNS, SSL, security headers, DNSBL, BGP, IPv6, geolocation in one call - **Diagnostics** โ€” DNS lookup & global propagation, WHOIS, reverse DNS, HTTP check, my-IP - **Mail Tester** โ€” live SPF/DKIM/DMARC + spam score + AI fix suggestions, results emailed (localized) - **Monitoring** โ€” TCP / HTTP / Ping with alerts and public status pages - **MCP server** โ€” 17 tools exposed to Claude Code, Codex, Cursor, any MCP client - **Install** โ€” `claude mcp add p3x-network -- npx p3x-network-mcp` - **Try** โ€” *"audit example.com"*, *"why do my emails land in spam? test me@example.com"* - **Source** โ€” [patrikx3/network](https://github.com/patrikx3/network) ยท [patrikx3/network-mcp](https://github.com/patrikx3/network-mcp) - **Contact** โ€” [patrikx3.com](https://www.patrikx3.com/en/front/contact) ยท [donate](https://paypal.me/patrikx3) --- ## โค๏ธ Support Our Open-Source Project If you appreciate our work, consider โญ starring this repository or ๐Ÿ’ฐ making a donation to support server maintenance and ongoing development. Your support means the world to usโ€”thank you! --- ### ๐ŸŒ About My Domains All my domains, including [patrikx3.com](https://patrikx3.com), [corifeus.eu](https://corifeus.eu), and [corifeus.com](https://corifeus.com), are developed in my spare time. While you may encounter minor errors, the sites are generally stable and fully functional. --- ### ๐Ÿ“ˆ Versioning Policy **Version Structure:** We follow a **Major.Minor.Patch** versioning scheme: - **Major:** ๐Ÿ“… Corresponds to the current year. - **Minor:** ๐ŸŒ“ Set as 4 for releases from January to June, and 10 for July to December. - **Patch:** ๐Ÿ”ง Incremental, updated with each build. **๐Ÿšจ Important Changes:** Any breaking changes are prominently noted in the readme to keep you informed. [**P3X-REDIS-UI**](https://corifeus.com/redis-ui) Build v2026.4.2012 [![NPM](https://img.shields.io/npm/v/p3x-redis-ui.svg)](https://www.npmjs.com/package/p3x-redis-ui) [![Donate for PatrikX3 / P3X](https://img.shields.io/badge/Donate-PatrikX3-003087.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=QZVM4V6HVZJW6) [![Contact Corifeus / P3X](https://img.shields.io/badge/Contact-P3X-ff9900.svg)](https://www.patrikx3.com/en/front/contact) [![Like Corifeus @ Facebook](https://img.shields.io/badge/LIKE-Corifeus-3b5998.svg)](https://www.facebook.com/corifeus.software) [//]: #@corifeus-footer:end