redis-ui

๐Ÿ“ก P3X Redis UI: A highly functional and convenient database GUI that fits in your pocket, accessible on both responsive web and desktop applications.


Project maintained by patrikx3 Hosted on GitHub Pages — Theme by mattgraham

NPM Donate for PatrikX3 / P3X Contact Corifeus / P3X Corifeus @ Facebook Uptime ratio (90 days)

๐Ÿ“ก P3X Redis UI: A highly functional and convenient database GUI that fits in your pocket, accessible on both responsive web and desktop applications v2026.4.632

๐ŸŒŒ Bugs are evidentโ„ข - MATRIX๏ธ
๐Ÿšง This project is under active development!
๐Ÿ“ข We welcome your feedback and contributions.

NodeJS LTS is supported

๐Ÿ› ๏ธ Built on NodeJs version

v24.14.1

๐Ÿ“ Description

p3x-redis-ui is a versatile Redis GUI that works as a web-based server application or a standalone desktop app. It excels at managing JSON data through an integrated CodeMirror editor with GitHub dark/light themes, supports uploading and downloading binary data, and handles SSH, cluster, and sentinel configurations.

Minimum Node.js Version

v22.0.0

30-Second Docker Quick Start

mkdir -p ./p3x-redis-ui-settings
docker run -d \
  --name p3x-redis-ui \
  -p 7843:7843 \
  -v $PWD/p3x-redis-ui-settings:/settings \
  patrikx3/p3x-redis-ui

Open: http://localhost:7843

Kubernetes / Docker: Always use the latest tag (patrikx3/p3x-redis-ui:latest) with imagePullPolicy: Always. Version-specific tags are available but latest is the recommended and supported tag.

Supported Languages

Switch language in Settings โ€” 54 languages covering 88+ countries:

Arabic (ar), Azerbaijani (az), Belarusian (be), Bengali (bn), Bosnian (bs), Bulgarian (bg), Chinese (zn), Chinese - Hong Kong (zh-HK), Chinese - Taiwan (zh-TW), Croatian (hr), Czech (cs), Danish (da), Dutch (nl), English (en), Estonian (et), Filipino (fil), Finnish (fi), French (fr), Georgian (ka), German (de), Greek (el), Hebrew (he), Hungarian (hu), Armenian (hy), Indonesian (id), Italian (it), Japanese (ja), Kazakh (kk), Khmer (km), Korean (ko), Kyrgyz (ky), Lithuanian (lt), Macedonian (mk), Malay (ms), Nepali (ne), Norwegian (no), Polish (pl), Portuguese (pt-PT), Portuguese - Brazil (pt-BR), Romanian (ro), Russian (ru), Serbian (sr), Sinhala (si), Slovak (sk), Slovenian (sl), Spanish (es), Swahili (sw), Swedish (sv), Tajik (tg), Tamil (ta), Thai (th), Turkish (tr), Ukrainian (uk), Vietnamese (vi)

Screenshots

View screenshots

Features

Dual GUI: Angular + React

P3X Redis UI was originally built with AngularJS and has been fully migrated to two modern frontends โ€” Angular and React/MUI. You can switch between them live in Settings โ†’ GUI.

AI-Powered Redis Query Translation

AI Configuration

The AI query translation feature works out of the box โ€” natural language queries are automatically translated to Redis commands via the Groq API.

How It Works

By default, AI queries are routed through network.corifeus.com, which handles the Groq API call. No configuration needed.

If you set your own Groq API key, you can choose to:

Free Tier Limitations

The default proxy uses the Groq free tier, which has strict rate limits for the openai/gpt-oss-120b model:

Limit Value
Requests/minute 30
Requests/day 1,000
Tokens/minute 8,000
Tokens/day 200,000

These limits are shared across all users of the default proxy. For complex queries (e.g. bulk key generation with EVAL/Lua scripts), the shared quota can be exhausted quickly.

Recommended: Get your own free Groq API key at console.groq.com โ€” this gives you a dedicated quota and better reliability for AI-powered queries.

AI Settings in the UI

The Settings page has an AI Settings panel with:

Configuration Options

Recommended: Configure AI settings via the GUI first (Settings > AI Settings). Once configured, you can optionally add groqApiKeyReadonly: true to p3xrs.json or --groq-api-key-readonly CLI flag to lock the settings.

All settings can also be configured via p3xrs.json or CLI options.

Config (p3xrs.json):

{
  "p3xrs": {
    "groqApiKey": "gsk_your_key_here",
    "aiEnabled": true,
    "aiUseOwnKey": false
  }
}
Key Type Default Description
groqApiKey string "" Your Groq API key (get free at console.groq.com)
aiEnabled boolean true Enable/disable AI auto-detect on unrecognized commands; ai: prefix always works regardless
aiUseOwnKey boolean false true = route directly to Groq, false = route via network.corifeus.com
groqApiKeyReadonly boolean false Lock all AI settings (toggles disabled, Edit hidden)

CLI options:

p3xrs --groq-api-key gsk_your_key_here
p3xrs --groq-api-key-readonly

Readonly Mode

To prevent users from changing AI settings (e.g. on a public instance):

Config (p3xrs.json):

{
  "p3xrs": {
    "groqApiKey": "gsk_your_key_here",
    "groqApiKeyReadonly": true
  }
}

CLI:

p3xrs --groq-api-key gsk_your_key_here --groq-api-key-readonly

Or combine with readonly connections (-r) which also disables AI settings:

p3xrs -r --groq-api-key gsk_your_key_here

Example systemd service (public instance):

[Unit]
Description=p3x-redis-ui
After=network.target

[Service]
Type=simple
User=user
WorkingDirectory=/home/user/p3x-redis-ui
ExecStart=/var/p3x-redis-ui-server/bin/p3xrs.mjs -r --groq-api-key-readonly --config /home/user/p3x-redis-ui/p3xrs.json
Restart=on-abort

[Install]
WantedBy=multi-user.target

Connection Resilience

Compatibility

Data Handling

Key Export / Import

Real-Time Monitoring (Pulse / Profiler / PubSub)

Three dedicated tabs accessible from the monitoring page:

Pulse โ€” Live Dashboard

Profiler โ€” Real-Time Command Stream

PubSub โ€” Channel Message Monitoring

Analysis โ€” Memory Analysis Dashboard

User Interface

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

Networking

Modern Dual Frontend Architecture

The UI has been fully migrated from AngularJS (1.x) to two modern frontends โ€” Angular and React/MUI โ€” both at full feature parity:

Angular frontend (/ng/):

React frontend (/react/):

Shared across both:

RedisTimeSeries Visualization

Redis 8 Module Support (ReJSON)

ES Modules Backend

The server codebase has been fully migrated from CommonJS to ES Modules (.mjs), enabling native Node.js ESM support and better tree-shaking.

Security

Important Notice

Do not manually create the configuration JSON file with a text editor. Use the GUI to generate it instead โ€” the resulting file can then be deployed to systems like Kubernetes.

Optional HTTP Basic Authentication

Protect both HTTP routes and Socket.IO with HTTP Basic authentication.

Config (p3xrs.json):

{
  "p3xrs": {
    "httpAuth": {
      "enabled": true,
      "username": "admin",
      "passwordHash": "$2b$10$..."
    }
  }
}

Generate a BCrypt password hash:

node ./node_modules/p3x-redis-ui-server/bin/bcrypt-password.js -p myplainpass

Environment variables:

CLI options:

Notes:

All Features Are Free

All features including SSH tunneling, Cluster/Sentinel, ReJSON, binary upload/download, and readonly connections are available for free. No license required.

Live Demo

Try the latest version at p3x.redis.patrikx3.com.

Installation

Releases / Downloads

https://github.com/patrikx3/redis-ui/releases

CLI (Node.js / NPM)

Start the server via Node.js/NPM and access it in a browser.

npm install -g p3x-redis-ui
p3xrs

Open: http://localhost:7843

CLI Options

Usage: p3xrs [options]

Options:
  -V, --version                           output the version number
  -c, --config [config]                   Set the p3xr.json p3x-redis-ui-server configuration, see more help in p3x-redis-ui-server
  -r, --readonly-connections              Set the connections to be readonly, no adding, saving or delete a connection
  -n, --connections-file-name [filename]  Set the connections file name, overrides default .p3xrs-conns.json
  --http-auth-enable                      Enable HTTP Basic auth
  --http-auth-disable                     Disable HTTP Basic auth
  --http-auth-username [username]         HTTP Basic auth username
  --http-auth-password [password]         HTTP Basic auth plain password
  --http-auth-password-hash [hash]        HTTP Basic auth bcrypt password hash
  --http-auth-password-hash-file [file]   Read HTTP Basic auth bcrypt password hash from file
  --groq-api-key [key]                    Groq API key for AI-powered Redis query translation (get a free key at console.groq.com)
  --groq-api-key-readonly                 Prevent users from changing the Groq API key via the UI
  -h, --help                              display help for command

Server startup guide

Config file reference

Connection config reference

Example connection config

Docker

https://hub.docker.com/r/patrikx3/p3x-redis-ui

Compose

https://github.com/patrikx3/redis-ui/blob/master/docker-compose.yml

wget https://raw.githubusercontent.com/patrikx3/redis-ui/master/docker-compose.yml
# Adjust the settings folder path in docker-compose.yml as needed.
docker-compose up

Standalone

mkdir -p ./p3x-redis-ui-settings
docker run -v $PWD/p3x-redis-ui-settings:/settings -h docker-p3x-redis-ui -p 7843:7843 -t -i patrikx3/p3x-redis-ui

The GUI will be at http://localhost:7843

Health Check

The Docker image includes a built-in HEALTHCHECK that polls /health every 30 seconds. Container orchestrators (Docker Compose, Swarm, etc.) will automatically mark the container as unhealthy if the server stops responding.

Graceful Shutdown

The server handles SIGTERM and SIGINT signals gracefully โ€” it closes Socket.IO connections, disconnects all Redis clients, and shuts down the HTTP server before exiting.

Kubernetes

Raw Manifests

https://github.com/patrikx3/redis-ui/blob/master/k8s/manifests

kubectl apply -f namespace.yaml
# Edit redis host and password in configmap.yaml first
kubectl apply -f configmap.yaml
kubectl apply -f deployment.yaml
kubectl apply -f service.yaml
kubectl apply -f ingress.yaml

The manifests and Helm chart include liveness and readiness probes โ€” both use GET /health to verify the server is responding.

Helm Chart

https://github.com/patrikx3/redis-ui/blob/master/k8s/chart

helm template -f values.yaml release --namespace namespace . > generated.yaml
kubectl apply -f generated.yaml

Desktop Applications

macOS

Supports both Intel and Apple Silicon builds. If you download the zip for the arm64 version, remove the quarantine attribute:

sudo xattr -rd com.apple.quarantine P3X-Redis-UI.app

Snap

Available for x64 and arm64 architectures.

sudo snap install p3x-redis-ui

LINK

Flatpak

Download from the releases page and install:

wget https://github.com/patrikx3/redis-ui/releases/download/v${VERSION}/P3X-Redis-UI-${VERSION}-x86_64.flatpak
flatpak install ./P3X-Redis-UI-${VERSION}-x86_64.flatpak
flatpak run com.patrikx3.redis_ui

The application menu is automatically integrated.

AppImage, deb, rpm

These packages support automatic updates.

After downloading the AppImage, make it executable:

mkdir -p $HOME/opt
mv ~/Downloads/p3x-redis-ui-a.b.c-x86_64.AppImage $HOME/opt/
chmod +x $HOME/opt/p3x-redis-ui-a.b.c-x86_64.AppImage
$HOME/opt/p3x-redis-ui-a.b.c-x86_64.AppImage &

ElectronJs

The app is listed on ElectronJs Apps โ€” search for P3X.

Architecture

This application uses Socket.IO instead of REST for client-server communication. While unconventional, Socket.IO provides better responsiveness by avoiding HTTP protocol overhead, resulting in a smoother interaction experience.

REST vs WebSocket benchmarks

Communication Flow

Browser / Electron App / VS Code Extension
        โ†“
redis-ui-material
  โ”œโ”€โ”€ Angular frontend (/ng/)  โ€” Angular + Angular Material + Webpack
  โ””โ”€โ”€ React frontend (/react/) โ€” React + MUI + Vite + Zustand
        โ†“ Socket.IO + HTTP
redis-ui-server (Express + ioredis)
        โ†“
Redis Instance (standalone / cluster / sentinel, optional SSH tunnel)
Repository Description
p3x-redis-ui Electron desktop app + CLI (this repo)
p3x-redis-ui-server HTTP + Socket.IO server backend
p3x-redis-ui-material Angular + React frontends
p3x-redis-ui-vscode VS Code extension

Adoption Notes

redis-commander has more Docker pulls due to its longer history and presence in tutorials/CI pipelines. p3x-redis-ui adoption continues to grow steadily.

Detailed analysis and action plan

Change Log

View change log

Contributors

View contributors

P3X Redis UI playground Corifeus P3X Redis UI AlternativeTo NPM Snap Store GitHub Pages Web development Webfejlesztรฉs


๐Ÿš€ Quick and Affordable Web Development Services

If you want to quickly and affordably develop your next digital project, visit corifeus.eu for expert solutions tailored to your needs.


๐ŸŒ Powerful Online Networking Tool

Discover the powerful and free online networking tool at network.corifeus.com.

๐Ÿ†“ Free
Designed for professionals and enthusiasts, this tool provides essential features for network analysis, troubleshooting, and management.
Additionally, it offers tools for:

All these features are completely free to use.


โค๏ธ 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, corifeus.eu, and 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:

๐Ÿšจ Important Changes: Any breaking changes are prominently noted in the readme to keep you informed.


P3X-REDIS-UI Build v2026.4.632

NPM Donate for PatrikX3 / P3X Contact Corifeus / P3X Like Corifeus @ Facebook