qishibo/AnotherRedisDesktopManager
31.9
Weak · 25 September 2026
16.4k
lines of production code
JavaScript
primary language
4
measurements over time
What this system is
This system is a cross-platform desktop client for managing Redis databases, built on Electron and Vue. It provides a modular interface for connecting to standalone, cluster, and sentinel Redis instances, including support for SSH tunneling. The application features comprehensive data visualization and editing capabilities for a wide range of formats, such as binary, compressed payloads, and various serialization protocols like Protobuf and Java serialization.
Features
Added Chinese, German, English, Spanish, French, and Italian language files
New localization files (cn.js, de.js, en.js, es.js, fr.js, it.js) have been added to the src/i18n/langs directory, providing translations for core application strings such as connection management, key operations, settings, and UI elements in Chinese, German, English, Spanish, French, and Italian.
src/i18n/langs · high confidence
Added macOS notarization script for Electron builds
A new notarization script has been added to the build process to automatically notarize the macOS application bundle. This script integrates with the Electron build context, targeting only the darwin platform, and uses environment variables for Apple ID credentials to submit the app for notarization, ensuring compliance with macOS security requirements.
pack/scripts · high confidence
Dark mode support for static assets
The application now includes a dark theme for its static UI components. A new CSS file at static/theme/dark/index.css provides the styling rules, and a .gitkeep file ensures the directory structure is preserved in version control.
static · high confidence
Initial application shell and core infrastructure
The application now features a new main layout with a draggable, resizable left sidebar for connection management and a tabbed main area for Redis data viewing. This release introduces a global event bus for component communication, a centralized shortcut system supporting platform-specific keys (e.g., Cmd+H on Mac), and CLI argument support for launching connections directly from the command line. The core Redis client has been migrated to ioredis, enabling support for standalone, cluster, and sentinel modes, as well as SSH tunneling with passphrase support. Additionally, the app now includes a command log viewer, an automatic update checker, and initial support for various data formats including Protobuf, PHP/Java serialization, and compressed payloads (Gzip, Brotli, Deflate).
src · high confidence
Initial i18n setup with multi-language support
The application now supports internationalization with translations for English, Chinese (Simplified and Traditional), Turkish, Russian, Portuguese, German, French, Ukrainian, Italian, Spanish, Korean, and Vietnamese. This includes both application-specific strings and Element UI component translations for these languages, allowing users to switch their preferred language via local storage.
src/i18n · high confidence
Initial project scaffolding and documentation
The repository is initialized with the core project structure, including configuration files for code style (.editorconfig), linting (.eslintrc.json, .jshintrc), and build tools (babel.config.json, .postcssrc.js). The application's main entry point (index.html) is added, featuring the logic for the auto dark mode feature that syncs with the operating system's theme settings. Comprehensive documentation is also included, such as the README files for installation and usage, a Privacy Policy, and a Security Policy for vulnerability reporting.
(repo-wide) · high confidence
New and improved data viewers for binary, compression, and serialization formats
The viewer components in src/components/viewers have been restructured and expanded to support a wider range of data formats with enhanced editing capabilities. New viewers include ViewerBinary and ViewerHex for raw byte/hex inspection, and compression viewers (ViewerBrotli, ViewerDeflate, ViewerDeflateRaw, ViewerGzip) that allow round-trip editing of compressed JSON data. Serialization support has been added for PHP (ViewerPHPSerialize, with read-only protection for incomplete classes), Java (ViewerJavaSerialize, read-only), Python Pickle (ViewerPickle, read-only), and MessagePack (ViewerMsgpack, with bigint support). The Protobuf viewer (ViewerProtobuf) now features a UI for selecting .proto files and types, with fixes for int64 handling. The Custom viewer (ViewerCustom) has been optimized to handle large content by writing to temporary files when hex strings exceed 8000 characters, and ViewerText now requires confirmation before modifying hidden content.
src/components/viewers · high confidence
New viewers for Redis Array, TimeSeries, and Vector data types
Added new content viewers for the Redis Array, TimeSeries, and Vector data types. The Array viewer displays indexed elements with add/edit/delete capabilities and an info dialog. The TimeSeries viewer allows filtering by timestamp and value ranges, displaying timestamped data points. The Vector viewer supports adding elements with vector data and attributes, and includes a similarity search feature to find similar vectors by element name or vector values.
src/components/contents · high confidence
Architecture
Rebuilt core UI into modular components
The application's user interface has been restructured from a monolithic layout into a set of distinct, reusable Vue components. This change introduces specific modules for managing the connection list and grouping (Connections, ConnectionWrapper, ConnectionMenu), the command-line interface (CliTab, CliContent), and data visualization (FormatViewer, CommandLog). It also adds dedicated components for user interactions such as batch deletion (DeleteBatch), custom formatters (CustomFormatter), and hotkey management (HotKeys). This modularization improves code maintainability and allows for more granular updates to specific interface areas.
src/components · high confidence
Behavioural changes
6 commits (2 fixes) modifying pack/electron/icons
A change to existing behaviour in pack/electron/icons — 6 commits (2 fixs), 3 files.
pack/electron/icons · medium confidence · unverified
Improved window state persistence and manual update support
The application now remembers and restores the window's position, size, and maximized state across restarts, including logic to prevent the window from disappearing on external displays or becoming too small. Additionally, the auto-update mechanism has been restructured to require manual confirmation before downloading updates, giving users more control over when updates are applied.
pack/electron · high confidence
Introduction of Webpack-based development and build configuration
The project now uses a dedicated configuration structure for managing development and production environments. A new dev environment file sets the NODE\_ENV to development, while a production environment file sets it to production. The main configuration file defines specific settings for the development server, including a default port of 9988, localhost binding, and source map generation options. It also outlines build settings, such as output directories, asset paths, and options for production source maps and gzip compression.
config · high confidence
Migrate build system to Webpack 4 with Electron renderer support
The build configuration has been updated to use Webpack 4, introducing a new production build script and updated webpack configuration files. The build target is now explicitly set to 'electron-renderer' to support Electron applications, and CSS extraction has switched from ExtractTextPlugin to MiniCssExtractPlugin. Additionally, the development server now uses portfinder for dynamic port allocation, and the production build includes optimized chunk splitting and runtime chunk management.
build · high confidence
Dependencies
Initial dependency and build configuration for Another Redis Desktop Manager
This change introduces the foundational dependency manifests and Electron build configuration for the application. It establishes the runtime dependencies, including ioredis (5.3.2) for Redis connectivity, Vue 2 and Element UI for the interface, and various data parsers (msgpack, protobuf, Java serialization). It also sets up the development toolchain (Webpack, Babel, ESLint) and configures Electron Builder (23.0.2) with Electron 12.2.3 to support cross-platform packaging for Windows (NSIS, ZIP), macOS (DMG), and Linux (AppImage).
(dependencies) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Score
- CAI 33 → 32 (-1.0)
- Rubric changed (rubric-2026.08.15 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 60 → 38 (-21.1)
- Architecture 62 (new)
- Maturity 53 → 44 (-9.0)
- Readiness 13 → 24 (+11.6)
- Security 51 → 62 (+11.7)
- Accessibility 31 (new)
Resolved (80)
- Boundary-crossing change coupling: Setting.vue ↔ cn.js (src/components/Setting.vue)
- Boundary-crossing change coupling: Setting.vue ↔ en.js (src/components/Setting.vue)
- Boundary-crossing change coupling: font-manager.js ↔ Setting.vue (pack/electron/font-manager.js)
- Boundary-crossing change coupling: font-manager.js ↔ cn.js (pack/electron/font-manager.js)
- Boundary-crossing change coupling: font-manager.js ↔ en.js (pack/electron/font-manager.js)
- Change coupling: cn.js ↔ en.js (src/i18n/langs/cn.js)
- Change coupling: cn.js ↔ ua.js (src/i18n/langs/cn.js)
- Change coupling: en.js ↔ ua.js (src/i18n/langs/en.js)
- Change coupling: fr.js ↔ ua.js (src/i18n/langs/fr.js)
- Change coupling: tr.js ↔ ua.js (src/i18n/langs/tr.js)
- Critical CVE: [GHSA redacted] (package-lock.json)
- Critical CVE: [GHSA redacted] (package-lock.json)
- Critical CVE: [GHSA redacted] (package-lock.json)
- Critical CVE: [GHSA redacted] (package-lock.json)
- Critical CVE: [GHSA redacted] (package-lock.json)
- Critical CVE: [GHSA redacted] (package-lock.json)
- Critical CVE: [GHSA redacted] (package-lock.json)
- Critical CVE: [GHSA redacted] (package-lock.json)
- Critical CVE: [GHSA redacted] (package-lock.json)
- Critical CVE: [GHSA redacted] (package-lock.json)
- …and 60 more
New (139)
- Boundary-crossing change coupling: LanguageSelector.vue ↔ i18n.js (src/components/LanguageSelector.vue)
- Change coupling: FormatViewer.vue ↔ util.js (src/components/FormatViewer.vue)
- Critical CVE: [GHSA redacted] (package-lock.json)
- Critical CVE: [GHSA redacted] (package-lock.json)
- Critical CVE: [GHSA redacted] (package-lock.json)
- Critical CVE: [GHSA redacted] (package-lock.json)
- Critical CVE: [GHSA redacted] (package-lock.json)
- Critical CVE: [GHSA redacted] (package-lock.json)
- Critical CVE: [GHSA redacted] (package-lock.json)
- Critical CVE: [GHSA redacted] (package-lock.json)
- Critical CVE: [GHSA redacted] (package-lock.json)
- Critical vulnerability: [GHSA redacted] (package-lock.json)
- Documentation: no architecture or design documentation (README.md)
- Documentation: no installation or build instructions (README.md)
- End-of-life framework: Vue 2
- High CVE: [GHSA redacted] (package-lock.json)
- High CVE: [GHSA redacted] (package-lock.json)
- High CVE: [GHSA redacted] (package-lock.json)
- High CVE: [GHSA redacted] (package-lock.json)
- High CVE: [GHSA redacted] (package-lock.json)
- …and 119 more
Changes since last survey
- 12 commits — 5 feature/other, 7 fixes
By area
- src/components — 8 commits
- pack/electron — 3 commits
- (root) — 1 commit
Notable commits
- fix: fix #1239 middle click to close tab
- fix: fix #1337 single instance mode
- fix: fix #1380 fix #1343 fix protobuf int64 issues & edit int type
- fix: fix #1400 httl support for valkey>=9.0
- fix: fix max crash issues in 1.7.3
- fix: fix window disappears in mac
- fix: fix: reset the upload list when the import dialog closes (#1407)
- change: Protobuf optimize (#1410)
- change: Vector type support (#1409)
- change: cmd logs click to copy
- change: stream\ts add localTimeString title
- change: update version to 1.7.3
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
qishibo/AnotherRedisDesktopManager was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 25 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit c149855106628babcdfb7675a8e7ba9434d2492a — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-dd72cc24c749.