diff --git a/README.md b/README.md index 5cba67e..dc799da 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ -

English | 简体中文

+

English | +简体中文

@@ -12,7 +13,8 @@ [![Discord](https://img.shields.io/discord/1170373259133456434?label=Discord&color=5865F2)](https://discord.gg/VTFbBMGjWh) [![X](https://img.shields.io/badge/Twitter-black?logo=x&logoColor=white)](https://twitter.com/Lykin53448) -Tiny RDM is a modern lightweight cross-platform Redis desktop manager available for Mac, Windows, and Linux. +Tiny RDM is a modern lightweight cross-platform Redis desktop manager available for Mac, Windows, and +Linux. @@ -23,7 +25,8 @@ ## Feature -* Super lightweight, built on Webview2, without embedded browsers (Thanks to [Wails](https://github.com/wailsapp/wails)). +* Super lightweight, built on Webview2, without embedded browsers (Thanks + to [Wails](https://github.com/wailsapp/wails)). * More elegant UI, frameless, offering light and dark themes (Thanks to [Naive UI](https://github.com/tusen-ai/naive-ui) and [IconPark](https://iconpark.oceanengine.com)). * Multi-language support ([Need more languages ? Click here to contribute](.github/CONTRIBUTING.md)). @@ -37,12 +40,13 @@ * Segmented loading and querying for List/Hash/Set/Sorted Set. * Decode/decompression display for value of List/Hash/Set/Sorted Set. * Inbuilt advanced editor - Monaco Editor. +* Real-time commands monitoring. +* Support import/export data. ## Roadmap -- [ ] Real-time commands monitoring + - [ ] Pub/Sub operations - [ ] Import/export connection profile -- [ ] Import/export data ## Installation @@ -54,27 +58,33 @@ Available to download for free from [here](https://github.com/tiny-craft/tiny-rd > ``` ## Build Guidelines + ### Prerequisites + * Go (latest version) * Node.js >= 16 * NPM >= 9 ### Install wails + ```bash go install github.com/wailsapp/wails/v2/cmd/wails@latest ``` ### Clone the code + ```bash git clone https://github.com/tiny-craft/tiny-rdm --depth=1 ``` ### Build frontend + ```bash npm install --prefix ./frontend ``` ### Compile and run + ```bash wails dev ``` diff --git a/README_zh.md b/README_zh.md index a3c4b49..d53890c 100644 --- a/README_zh.md +++ b/README_zh.md @@ -37,12 +37,13 @@ * List/Hash/Set/Sorted Set的分段加载和查询 * List/Hash/Set/Sorted Set值的转码显示 * 内置高级编辑器Monaco Editor +* 支持命令实时监控 +* 支持数据导入/导出 ## 未来版本规划 -- [ ] 命令实时监控 + - [ ] 发布/订阅支持 - [ ] 连接配置导入/导出 -- [ ] 数据导入/导出 ## 安装 @@ -54,34 +55,42 @@ > ``` ## 构建项目 + ### 运行环境要求 + * Go(最新版本) * Node.js >= 16 * NPM >= 9 ### 安装wails + ```bash go install github.com/wailsapp/wails/v2/cmd/wails@latest ``` ### 拉取代码 + ```bash git clone https://github.com/tiny-craft/tiny-rdm --depth=1 ``` ### 构建前端代码 + ```bash npm install --prefix ./frontend ``` ### 编译运行开发版本 + ```bash wails dev ``` ## 关于 + 此APP由我个人开发,也作为本人第一个开源项目的尝试,由于精力有限,可能会存在BUG或者使用体验上的问题,欢迎提交issue和PR。 同时本人也在探索开源代码、独立开发和盈利性商业应用之间的平衡关系,欢迎有共同意向的小伙伴加入群聊探讨和交换想法。 + * QQ群:831077639 ## 开源许可 diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 7b4eae5..0643226 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -23,7 +23,7 @@ "@vitejs/plugin-vue": "^5.0.0", "naive-ui": "^2.36.0", "prettier": "^3.1.1", - "unplugin-auto-import": "^0.17.2", + "unplugin-auto-import": "^0.17.3", "unplugin-icons": "^0.18.1", "unplugin-vue-components": "^0.26.0", "vite": "^5.0.10" @@ -39,10 +39,13 @@ } }, "node_modules/@antfu/utils": { - "version": "0.7.6", - "resolved": "https://registry.npmmirror.com/@antfu/utils/-/utils-0.7.6.tgz", - "integrity": "sha512-pvFiLP2BeOKA/ZOS6jxx4XhKzdVLHDhGlFEaZ2flWWYf2xOqVniqpk38I04DFRyz+L0ASggl7SkItTc+ZLju4w==", - "dev": true + "version": "0.7.7", + "resolved": "https://registry.npmjs.org/@antfu/utils/-/utils-0.7.7.tgz", + "integrity": "sha512-gFPqTG7otEJ8uP6wrhDv6mqwGWYZKNvAcCq6u9hOj0c+IKCEsY4L1oC9trPq2SaWIzAfHvqfBDxF591JkMf+kg==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } }, "node_modules/@babel/parser": { "version": "7.23.5", @@ -1180,11 +1183,14 @@ }, "node_modules/escape-string-regexp": { "version": "5.0.0", - "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "dev": true, "engines": { "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/estree-walker": { @@ -1863,7 +1869,7 @@ }, "node_modules/scule": { "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/scule/-/scule-1.1.1.tgz", + "resolved": "https://registry.npmjs.org/scule/-/scule-1.1.1.tgz", "integrity": "sha512-sHtm/SsIK9BUBI3EFT/Gnp9VoKfY6QLvlkvAE6YK7454IF8FSgJEAnJpVdSC7K5/pjI5NfxhzBLW2JAfYA/shQ==", "dev": true }, @@ -1922,11 +1928,14 @@ }, "node_modules/strip-literal": { "version": "1.3.0", - "resolved": "https://registry.npmmirror.com/strip-literal/-/strip-literal-1.3.0.tgz", + "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-1.3.0.tgz", "integrity": "sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg==", "dev": true, "dependencies": { "acorn": "^8.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" } }, "node_modules/supports-preserve-symlinks-flag": { @@ -1962,13 +1971,15 @@ "dev": true }, "node_modules/unimport": { - "version": "3.6.1", - "resolved": "https://registry.npmmirror.com/unimport/-/unimport-3.6.1.tgz", - "integrity": "sha512-zKzbp8AQ+l8QK3XrONtUBdgBbMI8TkGh8hBYF77ZkVqMLLIAHwGSwJRFolPQMBx/5pezeRKvmu2gzlqnxRZeqQ==", + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/unimport/-/unimport-3.7.1.tgz", + "integrity": "sha512-V9HpXYfsZye5bPPYUgs0Otn3ODS1mDUciaBlXljI4C2fTwfFpvFZRywmlOu943puN9sncxROMZhsZCjNXEpzEQ==", "dev": true, "dependencies": { "@rollup/pluginutils": "^5.1.0", + "acorn": "^8.11.2", "escape-string-regexp": "^5.0.0", + "estree-walker": "^3.0.3", "fast-glob": "^3.3.2", "local-pkg": "^0.5.0", "magic-string": "^0.30.5", @@ -1980,9 +1991,18 @@ "unplugin": "^1.5.1" } }, + "node_modules/unimport/node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "dev": true, + "dependencies": { + "@types/estree": "^1.0.0" + } + }, "node_modules/unimport/node_modules/local-pkg": { "version": "0.5.0", - "resolved": "https://registry.npmmirror.com/local-pkg/-/local-pkg-0.5.0.tgz", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.0.tgz", "integrity": "sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==", "dev": true, "dependencies": { @@ -1991,38 +2011,44 @@ }, "engines": { "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" } }, "node_modules/unplugin": { - "version": "1.5.1", - "resolved": "https://registry.npmmirror.com/unplugin/-/unplugin-1.5.1.tgz", - "integrity": "sha512-0QkvG13z6RD+1L1FoibQqnvTwVBXvS4XSPwAyinVgoOCl2jAgwzdUKmEj05o4Lt8xwQI85Hb6mSyYkcAGwZPew==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-1.6.0.tgz", + "integrity": "sha512-BfJEpWBu3aE/AyHx8VaNE/WgouoQxgH9baAiH82JjX8cqVyi3uJQstqwD5J+SZxIK326SZIhsSZlALXVBCknTQ==", "dev": true, "dependencies": { "acorn": "^8.11.2", "chokidar": "^3.5.3", "webpack-sources": "^3.2.3", - "webpack-virtual-modules": "^0.6.0" + "webpack-virtual-modules": "^0.6.1" } }, "node_modules/unplugin-auto-import": { - "version": "0.17.2", - "resolved": "https://registry.npmmirror.com/unplugin-auto-import/-/unplugin-auto-import-0.17.2.tgz", - "integrity": "sha512-Eu/xWI6SH4jTWXvzOfXQWAxRtiz/gMObm7wXtgMj7wBjHQKLgHTmHd4R4oha87KYGah1aKMqiqDeAxiPmfSoTg==", + "version": "0.17.3", + "resolved": "https://registry.npmjs.org/unplugin-auto-import/-/unplugin-auto-import-0.17.3.tgz", + "integrity": "sha512-0cn0wr8X579TtdZKUAps0dDVrYzttx38ImdxZjmCeNlMDJX8UuSjO83vFqgS4ClNDIGWAute+xl9j5vRSX+vsw==", "dev": true, "dependencies": { - "@antfu/utils": "^0.7.6", + "@antfu/utils": "^0.7.7", "@rollup/pluginutils": "^5.1.0", "fast-glob": "^3.3.2", "local-pkg": "^0.5.0", "magic-string": "^0.30.5", "minimatch": "^9.0.3", - "unimport": "^3.6.0", - "unplugin": "^1.5.1" + "unimport": "^3.7.0", + "unplugin": "^1.6.0" }, "engines": { "node": ">=14" }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, "peerDependencies": { "@nuxt/kit": "^3.2.2", "@vueuse/core": "*" @@ -2332,9 +2358,9 @@ } }, "@antfu/utils": { - "version": "0.7.6", - "resolved": "https://registry.npmmirror.com/@antfu/utils/-/utils-0.7.6.tgz", - "integrity": "sha512-pvFiLP2BeOKA/ZOS6jxx4XhKzdVLHDhGlFEaZ2flWWYf2xOqVniqpk38I04DFRyz+L0ASggl7SkItTc+ZLju4w==", + "version": "0.7.7", + "resolved": "https://registry.npmjs.org/@antfu/utils/-/utils-0.7.7.tgz", + "integrity": "sha512-gFPqTG7otEJ8uP6wrhDv6mqwGWYZKNvAcCq6u9hOj0c+IKCEsY4L1oC9trPq2SaWIzAfHvqfBDxF591JkMf+kg==", "dev": true }, "@babel/parser": { @@ -3086,7 +3112,7 @@ }, "escape-string-regexp": { "version": "5.0.0", - "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "dev": true }, @@ -3600,7 +3626,7 @@ }, "scule": { "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/scule/-/scule-1.1.1.tgz", + "resolved": "https://registry.npmjs.org/scule/-/scule-1.1.1.tgz", "integrity": "sha512-sHtm/SsIK9BUBI3EFT/Gnp9VoKfY6QLvlkvAE6YK7454IF8FSgJEAnJpVdSC7K5/pjI5NfxhzBLW2JAfYA/shQ==", "dev": true }, @@ -3644,7 +3670,7 @@ }, "strip-literal": { "version": "1.3.0", - "resolved": "https://registry.npmmirror.com/strip-literal/-/strip-literal-1.3.0.tgz", + "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-1.3.0.tgz", "integrity": "sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg==", "dev": true, "requires": { @@ -3678,13 +3704,15 @@ "dev": true }, "unimport": { - "version": "3.6.1", - "resolved": "https://registry.npmmirror.com/unimport/-/unimport-3.6.1.tgz", - "integrity": "sha512-zKzbp8AQ+l8QK3XrONtUBdgBbMI8TkGh8hBYF77ZkVqMLLIAHwGSwJRFolPQMBx/5pezeRKvmu2gzlqnxRZeqQ==", + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/unimport/-/unimport-3.7.1.tgz", + "integrity": "sha512-V9HpXYfsZye5bPPYUgs0Otn3ODS1mDUciaBlXljI4C2fTwfFpvFZRywmlOu943puN9sncxROMZhsZCjNXEpzEQ==", "dev": true, "requires": { "@rollup/pluginutils": "^5.1.0", + "acorn": "^8.11.2", "escape-string-regexp": "^5.0.0", + "estree-walker": "^3.0.3", "fast-glob": "^3.3.2", "local-pkg": "^0.5.0", "magic-string": "^0.30.5", @@ -3696,9 +3724,18 @@ "unplugin": "^1.5.1" }, "dependencies": { + "estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "dev": true, + "requires": { + "@types/estree": "^1.0.0" + } + }, "local-pkg": { "version": "0.5.0", - "resolved": "https://registry.npmmirror.com/local-pkg/-/local-pkg-0.5.0.tgz", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.0.tgz", "integrity": "sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==", "dev": true, "requires": { @@ -3709,31 +3746,31 @@ } }, "unplugin": { - "version": "1.5.1", - "resolved": "https://registry.npmmirror.com/unplugin/-/unplugin-1.5.1.tgz", - "integrity": "sha512-0QkvG13z6RD+1L1FoibQqnvTwVBXvS4XSPwAyinVgoOCl2jAgwzdUKmEj05o4Lt8xwQI85Hb6mSyYkcAGwZPew==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-1.6.0.tgz", + "integrity": "sha512-BfJEpWBu3aE/AyHx8VaNE/WgouoQxgH9baAiH82JjX8cqVyi3uJQstqwD5J+SZxIK326SZIhsSZlALXVBCknTQ==", "dev": true, "requires": { "acorn": "^8.11.2", "chokidar": "^3.5.3", "webpack-sources": "^3.2.3", - "webpack-virtual-modules": "^0.6.0" + "webpack-virtual-modules": "^0.6.1" } }, "unplugin-auto-import": { - "version": "0.17.2", - "resolved": "https://registry.npmmirror.com/unplugin-auto-import/-/unplugin-auto-import-0.17.2.tgz", - "integrity": "sha512-Eu/xWI6SH4jTWXvzOfXQWAxRtiz/gMObm7wXtgMj7wBjHQKLgHTmHd4R4oha87KYGah1aKMqiqDeAxiPmfSoTg==", + "version": "0.17.3", + "resolved": "https://registry.npmjs.org/unplugin-auto-import/-/unplugin-auto-import-0.17.3.tgz", + "integrity": "sha512-0cn0wr8X579TtdZKUAps0dDVrYzttx38ImdxZjmCeNlMDJX8UuSjO83vFqgS4ClNDIGWAute+xl9j5vRSX+vsw==", "dev": true, "requires": { - "@antfu/utils": "^0.7.6", + "@antfu/utils": "^0.7.7", "@rollup/pluginutils": "^5.1.0", "fast-glob": "^3.3.2", "local-pkg": "^0.5.0", "magic-string": "^0.30.5", "minimatch": "^9.0.3", - "unimport": "^3.6.0", - "unplugin": "^1.5.1" + "unimport": "^3.7.0", + "unplugin": "^1.6.0" }, "dependencies": { "local-pkg": { diff --git a/frontend/package.json b/frontend/package.json index 9898d97..2624f06 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -24,7 +24,7 @@ "@vitejs/plugin-vue": "^5.0.0", "naive-ui": "^2.36.0", "prettier": "^3.1.1", - "unplugin-auto-import": "^0.17.2", + "unplugin-auto-import": "^0.17.3", "unplugin-icons": "^0.18.1", "unplugin-vue-components": "^0.26.0", "vite": "^5.0.10" diff --git a/frontend/package.json.md5 b/frontend/package.json.md5 index ccb93da..34e28e9 100755 --- a/frontend/package.json.md5 +++ b/frontend/package.json.md5 @@ -1 +1 @@ -8dd2611ec12ad4782807cfbdc3ab5216 \ No newline at end of file +a7afaaabdb93bf768bac18ddb6d0494a