Files
JRedisDesktop/README.md
T
Jokul 10b3e1ec94 docs: update README and AGENTS.md with full feature list
- README: complete feature documentation with screenshots-like tables
- AGENTS.md: full architecture, IPC channels, component tree, shortcuts
2026-07-04 19:42:00 +08:00

2.7 KiB

JRedisDesktop

A modern Redis desktop manager built with Electron + Vue 3 + Vite.

Fork of AnotherRedisDesktopManager. The legacy Vue 2 codebase is archived in legacy/.

Features

Connection Management

  • Create, edit, delete connections with host/port/password
  • TLS/SSL support
  • Test connection before saving
  • Import/Export connections as JSON
  • Health check with auto-reconnect indicator

Key Browser

  • Pattern search with Redis MATCH syntax (e.g. user:*, cache:??)
  • Local filter for quick search
  • SCAN-based pagination
  • Tree view with key separator
  • Multi-select for batch operations
  • Batch delete with pipeline

Type Editors

  • String - view/edit with auto JSON formatting
  • Hash - field table with add/edit/delete
  • List - paginated view with push/edit/remove
  • Set - member list with filter, add/remove
  • Zset - sorted set with score, add/remove
  • Stream - entry viewer with field management

Key Operations

  • TTL - view and edit expiration
  • Rename - rename keys with existence check
  • Copy key name to clipboard
  • Delete single or batch

Analysis Tools

  • Redis CLI - interactive terminal with command history
  • Slow Log - view slow commands with timing
  • INFO dashboard - server statistics
  • DB selector - switch between databases 0-15

Settings

  • Theme - dark, light, or system
  • Language - English / 中文
  • SCAN count - keys per scan iteration
  • Font size - adjustable

Keyboard Shortcuts

Shortcut Action
Ctrl+N New connection
Ctrl+R Refresh keys
F5 Refresh keys
Delete Delete selected key
Escape Deselect key

Dev

npm install
npm run dev       # electron-vite dev with HMR
npm run build     # production build

Build packages

npm run build:linux
npm run build:mac
npm run build:win

Stack

  • Shell: Electron 33
  • Preload: contextBridge + typed IPC
  • Renderer: Vue 3 + Pinia + Element Plus
  • Build: electron-vite + Vite 6 + TypeScript 5
  • Redis client: ioredis 5
  • Persistence: electron-store + safeStorage

Architecture

Electron main (src/main/)
  ├── RedisService (ioredis wrapper)
  ├── electron-store (persistence)
  ├── safeStorage (credential encryption)
  └── IPC handlers (typed channels)

Preload (src/preload/)
  └── contextBridge → window.electronAPI

Renderer (src/renderer/src/)
  ├── stores/      (Pinia: connection, key, app)
  ├── components/  (Vue 3 SFCs)
  ├── i18n/        (English + Chinese)
  └── composables/ (useKeyboard)