Convert Figma logo to code with AI

qishibo logoAnotherRedisDesktopManager

🚀🚀🚀A faster, better and more stable Redis desktop manager [GUI client], compatible with Linux, Windows, Mac.

30,196
2,540
30,196
140

Top Related Projects

11,595

💻 Medis is a beautiful, easy-to-use Mac database management application for Redis.

Redis GUI by Redis

Redis Desktop Manager Builder

QuickRedis is a free forever Redis Desktop manager. It supports direct connection, sentinel, and cluster mode, supports multiple languages, supports hundreds of millions of keys, and has an amazing UI. Supports both Windows, Mac OS X and Linux platform.

Redis management tool written in node.js

Quick Overview

AnotherRedisDesktopManager is a faster, better, and more stable Redis desktop manager application based on electron, vue, and node.js. It's a cross-platform GUI tool for Redis, allowing users to manage their Redis databases with a user-friendly interface.

Pros

  • Cross-platform support (Windows, macOS, Linux)
  • User-friendly interface with dark mode support
  • Supports SSH tunnel and SSL connections
  • Offers various data viewing formats (JSON, MessagePack, PHP, etc.)

Cons

  • Limited advanced features compared to some commercial Redis GUI tools
  • May experience occasional performance issues with very large datasets
  • Some users report stability issues on certain platforms

Getting Started

  1. Download the appropriate installer for your operating system from the releases page.
  2. Install the application following the standard installation process for your OS.
  3. Launch the application and click on "Connection" to add a new Redis connection.
  4. Fill in the connection details (host, port, password if applicable) and click "Test Connection" to verify.
  5. Once connected, you can start managing your Redis databases through the intuitive interface.

Note: This is not a code library, so no code examples are provided. The application is used through its graphical user interface.

Competitor Comparisons

11,595

💻 Medis is a beautiful, easy-to-use Mac database management application for Redis.

Pros of Medis

  • Built with Electron, offering a more native desktop experience
  • Supports multiple Redis instances and databases
  • Features a clean, intuitive user interface

Cons of Medis

  • Less actively maintained (last update was in 2021)
  • Fewer features compared to AnotherRedisDesktopManager
  • Limited support for newer Redis features

Code Comparison

Medis (JavaScript):

const redis = require('redis');
const client = redis.createClient();

client.on('connect', () => {
  console.log('Connected to Redis');
});

AnotherRedisDesktopManager (Vue.js):

<template>
  <div class="redis-connection">
    <el-form :model="form" @submit.native.prevent="connectToRedis">
      <!-- Form fields -->
    </el-form>
  </div>
</template>

Both projects use different technologies for their implementation. Medis uses JavaScript with Node.js and Redis client libraries, while AnotherRedisDesktopManager is built with Vue.js and focuses on the frontend implementation.

AnotherRedisDesktopManager offers a more comprehensive and actively maintained solution for Redis management, with a wider range of features and better support for newer Redis versions. However, Medis provides a simpler, more lightweight alternative that may be suitable for basic Redis management tasks.

Redis GUI by Redis

Pros of RedisInsight

  • More comprehensive feature set, including support for Redis modules and advanced monitoring capabilities
  • Backed by Redis Labs, ensuring regular updates and enterprise-level support
  • Offers a web-based interface in addition to desktop application

Cons of RedisInsight

  • Larger resource footprint, potentially slower on older systems
  • Steeper learning curve due to more complex interface and advanced features

Code Comparison

While both projects are GUI applications and don't have directly comparable code, we can look at how they handle Redis connections:

AnotherRedisDesktopManager:

const client = redis.createClient({
  host: config.host,
  port: config.port,
  password: config.password
});

RedisInsight:

redis_client = redis.Redis(
    host=host,
    port=port,
    password=password,
    ssl=use_ssl,
    ssl_ca_certs=ca_cert_path
)

RedisInsight offers more advanced connection options out of the box, such as SSL support, which is beneficial for enterprise environments. However, AnotherRedisDesktopManager's simpler approach may be sufficient for many users and easier to understand for beginners.

Pros of RedisDesktopManager

  • More established project with a longer history and larger user base
  • Offers a wider range of features and advanced functionalities
  • Better documentation and community support

Cons of RedisDesktopManager

  • Paid software, requiring a license for full functionality
  • Heavier resource usage, potentially slower on older systems
  • Less frequent updates compared to AnotherRedisDesktopManager

Code Comparison

RedisDesktopManager:

void RedisClient::connect(const ConnectionConfig &config)
{
    m_connection = QSharedPointer<AbstractConnection>(createConnection(config));
    m_connection->connect();
}

AnotherRedisDesktopManager:

async connect() {
  try {
    await this.client.connect();
    this.connected = true;
  } catch (error) {
    console.error('Connection error:', error);
  }
}

Both projects implement connection methods, but RedisDesktopManager uses C++ with Qt framework, while AnotherRedisDesktopManager utilizes JavaScript, likely in an Electron-based application.

RedisDesktopManager offers a more robust, feature-rich experience but comes at a cost. AnotherRedisDesktopManager provides a free, lightweight alternative with frequent updates and a modern tech stack. The choice between them depends on specific needs, budget constraints, and preferred development environment.

Redis Desktop Manager Builder

Pros of rdm-builder

  • Focuses specifically on building and packaging Another Redis Desktop Manager
  • Provides automated builds for multiple platforms (Windows, macOS, Linux)
  • Simplifies the process of creating distributable versions of the application

Cons of rdm-builder

  • Limited functionality compared to the main Another Redis Desktop Manager repository
  • May not always be up-to-date with the latest changes in the main project
  • Requires additional setup and configuration for build environments

Code Comparison

While a direct code comparison isn't particularly relevant in this case, we can look at how each repository handles building the application:

rdm-builder:

- name: Build
  run: |
    npm run build
    npm run electron:build

Another Redis Desktop Manager:

"scripts": {
  "electron:build": "vue-cli-service electron:build",
  "electron:serve": "vue-cli-service electron:serve"
}

Both repositories use similar build processes, but rdm-builder focuses on automating these builds across multiple platforms.

QuickRedis is a free forever Redis Desktop manager. It supports direct connection, sentinel, and cluster mode, supports multiple languages, supports hundreds of millions of keys, and has an amazing UI. Supports both Windows, Mac OS X and Linux platform.

Pros of quick_redis_blog

  • Focused on blogging and content management for Redis-related topics
  • Potentially easier to use for non-technical users interested in Redis content
  • May offer more specialized features for Redis-centric blogging

Cons of quick_redis_blog

  • Limited functionality compared to a full-featured Redis desktop manager
  • Likely lacks advanced Redis data manipulation and visualization tools
  • May not support as wide a range of Redis operations and data types

Code Comparison

While a direct code comparison is not particularly relevant due to the different purposes of these projects, we can highlight some key differences in their implementation:

AnotherRedisDesktopManager (JavaScript):

const redis = require('redis');
const client = redis.createClient(options);
await client.connect();
const value = await client.get('key');

quick_redis_blog (Python, hypothetical):

from redis import Redis
r = Redis(host='localhost', port=6379, db=0)
value = r.get('key')
blog_post = r.hgetall('blog:post:1')

AnotherRedisDesktopManager is likely to have more comprehensive Redis interaction code, while quick_redis_blog may focus more on content management and blog-specific features using Redis as a backend.

Redis management tool written in node.js

Pros of Redis Commander

  • Web-based interface, accessible from any browser without installation
  • Multi-platform support (Windows, macOS, Linux) via Node.js
  • CLI tool for quick access and scripting capabilities

Cons of Redis Commander

  • Less polished UI compared to Another Redis Desktop Manager
  • Fewer advanced features for complex data manipulation
  • May require more setup and configuration for some users

Code Comparison

Redis Commander (JavaScript):

app.get('/apiv1/server/info', function(req, res) {
  myRedis.serverInfo(req.app.locals.redisConnections[0], function(err, response) {
    if (err) {
      console.error('getServerInfo', err);
      return res.send('ERROR: ' + err);
    }
    res.send(JSON.stringify(response));
  });
});

Another Redis Desktop Manager (Vue.js):

<template>
  <div class="server-info">
    <el-descriptions :column="1" border>
      <el-descriptions-item v-for="(value, key) in serverInfo" :key="key" :label="key">
        {{ value }}
      </el-descriptions-item>
    </el-descriptions>
  </div>
</template>

Both projects aim to provide Redis management capabilities, but they differ in their approach and target audience. Redis Commander offers a lightweight, web-based solution with CLI support, while Another Redis Desktop Manager provides a more feature-rich desktop application with a modern UI.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

Another Redis Desktop Manager

🚀🚀🚀 A faster, better and more stable redis desktop manager, compatible with Linux, windows, mac. What's more, it won't crash when loading massive keys.


LICENSE Release Download Twitter FOSSA Status

简体中文

Windows

  • Download latest exe package from release [or gitee in China], double click to install.
  • Or by chocolatey: choco install another-redis-desktop-manager
  • Or by winget: winget install qishibo.AnotherRedisDesktopManager
  • Or sponsor by win store, It's not free, and I will be very grateful to you.
    get from microsoft store

Linux

  • Download latest AppImage package from release [or gitee in China], chmod +x, double click to run.
  • Or by snap: sudo snap install another-redis-desktop-manager Tips: If permission denied when selecting private key, run sudo snap connect another-redis-desktop-manager:ssh-keys to give access to ~/.ssh folder.
    Get it from the Snap Store

Mac

If you can't open it after installation by brew or dmg, exec the following command then reopen:
sudo xattr -rd com.apple.quarantine /Applications/Another\ Redis\ Desktop\ Manager.app

  • Download latest dmg package from release [or gitee in China], double click to install.
  • Or by brew: brew install --cask another-redis-desktop-manager
  • Or sponsor by app store, It's not free, and I will be very grateful to you.
    get from app store

Enjoy!

redis status dark

redis key hash dark

redis console dark

redis exec log

Feature Log

  • 2024-06-06: Search connections support(>=4)
  • 2024-04-10: DB custom name support
  • 2024-02-21: Java/Pickle viewers support
  • 2024-02-15: Groups/Consumers in STREAM view
  • 2024-01-31: Hey, long time! Command line(CLI) args support
  • 2023-06-22: Export\Import keys support
  • 2023-05-26: Search support in Stream && Slow log support
  • 2023-04-01: Search support in List && Deflate raw support
  • 2022-10-07: Arrow Keys support in key list && Memory Analysis in folder
  • 2022-08-05: Clone Connection && Tabs Contextmenu\Mousewheel Support
  • 2022-04-01: Protobuf Support && Memory Analysis
  • 2022-03-03: Readonly Mode && Mointor Support
  • 2022-01-24: Command Dump Support
  • 2022-01-05: Support To Load All Keys
  • 2022-01-01: Brotli\Gzip\Deflate Support && RedisJSON Support
  • 2021-11-26: JSON Editable && Subscribe Support
  • 2021-08-30: Execution log Support && Add Hot Keys
  • 2021-08-16: Custom Formatter View Support!
  • 2021-06-30: Sentinel Support!!
  • 2021-06-24: ACL Support
  • 2021-05-03: Stream Support && Cli Command Tips Support
  • 2021-02-28: Connection Color Tag && Search History Support
  • 2021-02-03: Multiple Select\Delete && Msgpack Viewer Support
  • 2020-12-30: Tree View Support!!!
  • 2020-11-03: Binary View Support && SSH Passparse\Timeout Support
  • 2020-09-04: SSH Cluster Support && Extension Commands Support
  • 2020-06-18: SSL/TLS Support!!!
  • 2020-04-28: Page Zoom && Big Key Loads With Scan && Auto Json
  • 2020-04-18: Unvisible Key\Value Format Support
  • 2020-04-04: Cluster Support!!!
  • 2020-03-13: Dark Mode Support!!! && JsonView In Other Place
  • 2020-02-16: SSH Private Key Support
  • 2020-02-13: Open Cli Console In Tabs
  • 2019-06-14: Custom Font-Family Support
  • 2019-05-28: Key List Resizable
  • 2019-05-09: Search Support In Hash List Set Zset
  • 2019-04-26: Auto Updater
  • 2019-04-09: SSH Tunnel Connection Support
  • 2019-04-01: Extract Search Support
  • 2019-02-22: Single Connection Support
  • 2019-01-08: Project Start

Dev Build

Linux Or Mac

# clone code
git clone https://github.com/qishibo/AnotherRedisDesktopManager.git --depth=1
cd AnotherRedisDesktopManager

# install dependencies
npm install

# if download electron failed during installing, use this command
# ELECTRON_MIRROR="https://npmmirror.com/mirrors/electron/" npm install

# serve with hot reload at localhost:9988
npm start


# after the previous step is completed to 100%, open another tab, build up a desktop client
npm run electron

If linux errors like this:

# if error like this
../src/FontManagerLinux.cc:1:35: fatal error: fontconfig/fontconfig.h: No such file or directory

# then try this
sudo apt install libfontconfig1-dev

Windows

# install build tools for the first time, just execute once
npm install -g windows-build-tools

# clone code
git clone https://github.com/qishibo/AnotherRedisDesktopManager.git --depth=1
cd AnotherRedisDesktopManager

# install dependencies, 32-bit or 64-bit all use win32
npm install --platform=win32

# if download electron failed during installing, use this command
# npm config set ELECTRON_MIRROR https://npmmirror.com/mirrors/electron/
# npm install --platform=win32

# serve with hot reload at localhost:9988
npm start


# after the previous step is completed to 100%, open another tab, build up a desktop client
npm run electron

Build Package

# prepare before package
npm run pack:prepare

# build package on respective platforms
# on windows build 64bit package
npm run pack:win
# on windows build 32bit package
npm run pack:win32

# on mac
npm run pack:mac

# on linux
npm run pack:linux

Sponsor

  • Give me a star ⭐ or upvote on Producthunt

  • Through OpenCollective

  • If you are a Mac user, you can purchase this software from the app store to sponsor, and then let the app store automatically update it for you.
    app store

  • If you are a Windows user, you can purchase this software from the win store to sponsor.
    windows store

  • Wechat sponsor code [Sponsor me a cup of coffee ☕]

Contributors

This project exists thanks to all the people who contribute. contributors backers

Custom Viewer

When the default viewer does not meet the needs, you can format your content via customize script.
Method: Pull down the viewer list to the bottom, click "Custom -> Add", and then refer to the instructions below
Note: The script needs to output formatted content through print console.log echo etc., which can be any string or JSON string

ConfigDescription
NameCustom name
CommandExecutable commands, such as xxx.py xxx.js xxx.class etc. The file needs x permission, which can be executed in the form of ./xxx.py; It can also be set to /bin/node /bin/bash or other system commands, and the script path needs to be placed in Params
ParamsParameters spliced after Command, such as "--key {KEY} --value {VALUE}", where {KEY} and {VALUE} will be replaced with the corresponding Redis key and value. Note that if the content is invisible such as binary, you can use {HEX} instead of {VALUE}, and {HEX} will be replaced with the hexadecimal string. If HEX is too long (>8000 chars), it will be written to a temporary file. You can use {HEX_FILE} to obtain the file path, and read by yourself in the script

Configuration example:

Add env to the first line of the script, the final executed command is: ./home/qii/pickle_decoder.py {HEX}, the script can receive parameters via argv[1], ref #978

CommandParams
/home/qii/pickle_decoder.py{HEX}
/home/qii/shell_decoder.sh{VALUE}

Without execute permission x:

The final executed command is: /bin/node /home/qii/node_decoder.js {HEX} --key={KEY}, the script can receive parameters via argv[1]

CommandParams
/bin/bash/home/qii/shell_decoder.sh {VALUE}
/bin/node/home/qii/node_decoder.js {HEX} --key={KEY}

Start From Command Line(CLI)

If you want to start from command line(CLI), you can pass args to the App.

Examples

# Linux
# ./Another Redis Desktop Manager.AppImage

# Mac
# open /Applications/Another\ Redis\ Desktop\ Manager.app --args

# Windows
"D:\xxxx\Another Redis Desktop Manager.exe"

# COMMON
--host 127.0.0.1 --port 6379 --auth 123
--name tmp_connection

# CLUSTER
--cluster

# SSH
--ssh-host 192.168.0.110
--ssh-username root --ssh-password 123

# SENTINEL
--sentinel-master-name mymaster
--sentinel-node-password 123

# save connection
--save
# readonly mode
--readonly

Parameter Description

Common

ArgsDescriptionArgsDescription
--hostRedis host*--portRedis port
--authPassword--nameCustom name
--separatorKey separator--readonlyEnable readonly mode
--usernameUsername(Redis6 ACL)--saveEnable saving, one-time link by default

SSH

ArgsDescriptionArgsDescription
--ssh-hostSSH host*--ssh-portSSH port(default:22)
--ssh-usernameUsername*--ssh-passwordPassword
--ssh-private-keyPath of private key--ssh-passphrasePassword of private key
--ssh-timeoutSSH timeout(s) 

CLUSTER

ArgsDescription
--clusterEnable CLUSTER mode

SSL

ArgsDescriptionArgsDescription
--sslEnable SSL*--ssl-keySSL Private Key Pem
--ssl-caSSL Certificate Authority--ssl-certSSL Public Key Pem

SENTINEL

ArgsDescription
--sentinel-master-nameName of master group*,like 'mymaster'
--sentinel-node-passwordPassword of Redis node

FAQ

1. How to connect to Redis Cluster in internal network (such as Docker, LAN, AWS)?

Answer: Connect via SSH+Cluster (SSH to the internal network and then connecting to Cluster with internal IP such as 127.0.0.1, 192.168.x.x), you need to fill Redis Host with the internal IP.

How to get Redis internal IP? Connect through SSH, uncheck Cluster option, and then open the console to execute CLUSTER NODES, select any IP in the result.

2. Do I need to fill in the 'Username' in the Redis configuration?

Answer: The access control list (ACL) is only supported in Redis>=6.0, so do not fill it unless you need a special user.

License

MIT

Support

goanother.com   Producthunt   Twitter@shibo   Download Analysis