.gitignore000066400000000000000000000003441516251721000130470ustar00rootroot00000000000000/build /node_modules /*.log /*.iws .idea/workspace.xml .idea/tasks.xml .idea/profiles_settings.xml .idea/inspectionProfiles/Project_Default.xml .idea/inspectionProfiles/profiles_settings.xml node_modules/.yarn-integrity /dist.npmignore000066400000000000000000000002301516251721000130500ustar00rootroot00000000000000/.idea /artifacts /build /test /node_modules /*.iml /*.ipr /*.iws /.travis.yml /.scrutinizer.yml /Gruntfile.js /*.lock *.log /corifeus-boot.json /secure.travis.yml000066400000000000000000000014301516251721000131650ustar00rootroot00000000000000language: node_js node_js: - node before_script: - npm install -g grunt-cli npm env: global: secure: ndPY/yENX+jrLScJBSsu+GV93TZcnmFyPirG19UBvu2ZdUyh+jUnDfvsqtz9VCoYgArDoXaE2cn+O7ymlhzo3FaiTn4uhZFwWkNDvB/o4yVUY8JfqUJiKM1Ed/1FCwsKNQ5ClH9EyTKlsecu68f3Tl36C+YRI2n0ar2ILD9Fz4SzcFUS1sxAa1zAk20P5JKeEL/sEzHHYT/ex2p/TEltN/6SaV4ITV6z94FH5dxIuwgz7WQeteNx3dPG6H/b+mkpE6Lyzgb5fRhYSdoSiynWK6/Z4gswftXLG12YIue8NVR8Fa2RMAESA2Nzeu0SDfZl/jRJqw0DWKlNq+8Wzme81TPJw0S8aQDYVNWJAnbIXI2qGibXidy7+WHhM8AhoK/e+1VAKuD61H2W75YERGkktiN9oldcoGiyO/ODkxQ6gGZ6URsxC57SbtQdsTDWCAOGjkZOrcXE4qT30ItrfkVif0BpHtHhgCd8iAsnVDKcuTzj995gI/gNDitAKJjnMgIVlS3nLTYBATy7xJh90BMfDBG0MDvnonA7Co5Qrz04MotgQZ5abXckaNPkBAe9WTFeQ51pHcWSoWcuK/InTPIZCB6Hb6i/q5y8SOlGzTpr2v6vxPw9h83X2AxJLabxB6WgXCwr/DbehgnATK09O7s7QvwmG4PzfqqllcfCC6r4QRs= Gruntfile.js000066400000000000000000000004471516251721000133600ustar00rootroot00000000000000const utils = require('corifeus-utils'); module.exports = (grunt) => { const _ = require('lodash'); const builder = require(`corifeus-builder`); const loader = new builder.loader(grunt); loader.js({ }); grunt.registerTask('default', builder.config.task.build.js); } LICENSE000066400000000000000000000023501516251721000120630ustar00rootroot00000000000000 @license p3x-redis-ui v2018.9.8-1 The built p3x-redis-ui using p3x-redis-ui-server and p3x-redis-ui-material. https://pages.corifeus.com/redis-ui Copyright (c) 2018 Patrik Laszlo / P3X / Corifeus and contributors. MIT License Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.README.md000066400000000000000000000060461516251721000123430ustar00rootroot00000000000000[//]: #@corifeus-header [![Build Status](https://travis-ci.org/patrikx3/redis-ui.svg?branch=master)](https://travis-ci.org/patrikx3/redis-ui) [![Uptime Robot ratio (30 days)](https://img.shields.io/uptimerobot/ratio/m780749701-41bcade28c1ea8154eda7cca.svg)](https://uptimerobot.patrikx3.com/) --- # 📡 The built p3x-redis-ui using p3x-redis-ui-server and p3x-redis-ui-material. v2018.9.12-5 This is an open-source project. Star this repository, if you like it, or even donate! Thank you so much! :) I run my own server with dynamic IP address, so, it may happen, that the server can not be reachable for about max 15 minutes, due to nature of the dynamic DNS. The server may also be unreachable, when I backup the SSD with Clonzilla (very rarely) or an electrical issue (but this should not happen again). When the server is down, please hang on for 15-30 minutes and the server will be back up. All my domains (patrikx3.com and corifeus.com) could have errors, since I am developing in my free time. However, it is usually stable. **Bugs are evident™ - MATRIX️** ### Node Version Requirement ``` >=8.11.4 ``` ### Built on Node ``` v10.10.0 ``` The ```async``` and ```await``` keywords are required. Install NodeJs: https://nodejs.org/en/download/package-manager/ # Description [//]: #@corifeus-header:end It creates a package that allows you to compose `p3x-redis-ui-server` and `p3x-redis-ui-material` into one. **This is just development since September of 2018, please hang on to mature it.** # The test version https://p3x.redis.patrikx3.com # Start up with a server [Start up with a server readme](artifacts/readme/start-up-server.md) # Start up with Electron [Start up with Electron readme](artifacts/readme/start-up-with-electron.md) - in progress # To create your own certificate [To create your own certificate readme](artifacts/readme/create-https-cert.md) # Some description about the config file [Some description about the config file readme](p3xrs.json) # TODO [The to do readme](todo.md) - in progress # Change log [The change log readme](changelog.md) - in progress [//]: #@corifeus-footer --- [**P3X-REDIS-UI**](https://pages.corifeus.com/redis-ui) Build v2018.9.12-5 [![Like Corifeus @ Facebook](https://img.shields.io/badge/LIKE-Corifeus-3b5998.svg)](https://www.facebook.com/corifeus.software) [![Donate for Corifeus / P3X](https://img.shields.io/badge/Donate-Corifeus-003087.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=QZVM4V6HVZJW6) [![Contact Corifeus / P3X](https://img.shields.io/badge/Contact-P3X-ff9900.svg)](https://www.patrikx3.com/en/front/contact) ## P3X Sponsors [IntelliJ - The most intelligent Java IDE](https://www.jetbrains.com) [![JetBrains](https://cdn.corifeus.com/assets/svg/jetbrains-logo.svg)](https://www.jetbrains.com/) [![NoSQLBooster](https://cdn.corifeus.com/assets/png/nosqlbooster-70x70.png)](https://www.nosqlbooster.com/) [The Smartest IDE for MongoDB](https://www.nosqlbooster.com) [//]: #@corifeus-footer:endartifacts/000077500000000000000000000000001516251721000130365ustar00rootroot00000000000000artifacts/helpers/000077500000000000000000000000001516251721000145005ustar00rootroot00000000000000artifacts/helpers/redis-commander-types/000077500000000000000000000000001516251721000207135ustar00rootroot00000000000000artifacts/helpers/redis-commander-types/redis-type-hash.png000066400000000000000000000003041516251721000244240ustar00rootroot00000000000000PNG  IHDRasRGB pHYs  tIMEptEXtCommentCreated with GIMPW1IDAT8c`bř(b :HGP)*G <FMgiyIENDB`artifacts/helpers/redis-commander-types/redis-type-list.png000066400000000000000000000004221516251721000244550ustar00rootroot00000000000000PNG  IHDRasRGB pHYs  tIME:+H>tEXtCommentCreated with GIMPWIDAT8˵ C}yށ2m@h`LHd[^$;yl[v[$- 'm[xWU%Mܼ~XҸ %ZFq7i;b*]OC;IENDB`artifacts/helpers/redis-commander-types/redis-type-set.png000066400000000000000000000005571516251721000243060ustar00rootroot00000000000000PNG  IHDRh6sRGB pHYs  tIMELStEXtCommentCreated with GIMPWIDAT(ϵJ1oXE ZTCo=z(+}oKB7Z9NL&tuG]\I^ob$;ԻL$R2Kd!hx*N1|'/1g55iLuB|M0Ep C^G^ _&.n4#*r| 0z@+KhېAny Ay|+_=LzwIENDB`artifacts/helpers/redis-commander-types/redis-type-zset.png000066400000000000000000000003571516251721000244760ustar00rootroot00000000000000PNG  IHDRasRGB pHYs  tIME75tEXtCommentCreated with GIMPW\IDAT8Փ 0Cƾ\?<ԛRr ""mҦ~6 3 pfZXY"ds:ܖ-B{.,nӵ/񖤈+5viPf IENDB`artifacts/readme/000077500000000000000000000000001516251721000142735ustar00rootroot00000000000000artifacts/readme/create-https-cert.md000066400000000000000000000027201516251721000201540ustar00rootroot00000000000000[//]: #@corifeus-header # 📡 The built p3x-redis-ui using p3x-redis-ui-server and p3x-redis-ui-material. [//]: #@corifeus-header:end # Create HTTPS2 certificate Use PEM pass phrase: `123456789` ```bash #openssl req -newkey rsa:2048 -keyout localhost.key -out localhost.csr -passwd 123456789 openssl req -x509 -sha256 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 36500 openssl rsa -in key.pem -out key.nopass.pem ``` # Allow unauthorized TLS certificate ```bash process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0"; ``` [//]: #@corifeus-footer --- [**P3X-REDIS-UI**](https://pages.corifeus.com/redis-ui) Build v2018.9.12-5 [![Like Corifeus @ Facebook](https://img.shields.io/badge/LIKE-Corifeus-3b5998.svg)](https://www.facebook.com/corifeus.software) [![Donate for Corifeus / P3X](https://img.shields.io/badge/Donate-Corifeus-003087.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=QZVM4V6HVZJW6) [![Contact Corifeus / P3X](https://img.shields.io/badge/Contact-P3X-ff9900.svg)](https://www.patrikx3.com/en/front/contact) ## P3X Sponsors [IntelliJ - The most intelligent Java IDE](https://www.jetbrains.com) [![JetBrains](https://cdn.corifeus.com/assets/svg/jetbrains-logo.svg)](https://www.jetbrains.com/) [![NoSQLBooster](https://cdn.corifeus.com/assets/png/nosqlbooster-70x70.png)](https://www.nosqlbooster.com/) [The Smartest IDE for MongoDB](https://www.nosqlbooster.com) [//]: #@corifeus-footer:endartifacts/readme/start-up-server.md000066400000000000000000000102331516251721000176770ustar00rootroot00000000000000[//]: #@corifeus-header # 📡 The built p3x-redis-ui using p3x-redis-ui-server and p3x-redis-ui-material. [//]: #@corifeus-header:end # Start up with a server ```bash npm i -g p3x-redis-ui p3x-redis # if you want to disable changing of connections p3x-redis --readonly-connections # or p3x-redis -r ``` # Create a Linux SystemD service ```bash adduser --disabled-password redis-ui touch /etc/systemd/system/p3x-redis-ui.service nano /etc/systemd/system/p3x-redis-ui.service ``` Place this file with this content: ```text [Unit] Description=p3x-redis After=network.target [Service] Type=simple User=redis-ui WorkingDirectory=/home/redis-ui # or if you want readonly connections as it is public #ExecStart=/usr/bin/p3x-redis --readonly-connections ExecStart=/usr/bin/p3x-redis Restart=on-abort [Install] WantedBy=multi-user.target ``` Finally: ```bash systemctl daemon-reload systemctl enable p3x-redis-ui service p3x-redis-ui start ``` The server is loading at: [https://localhost:7843](https://localhost:7843) The best is, if you have an NGINX with a valid, secure HTTPS certificate for example Let's Encrypt and then use it as a proxy, for example my own: ```text /etc/nginx/sites-enabled/p3x.redis.patrikx3.com ``` Config: ```text server { listen 80 ; listen [::]:80 ; server_name p3x.redis.patrikx3.com; error_log /var/log/nginx/p3x.redis.patrikx3.com-error.log; access_log /var/log/nginx/p3x.redis.patrikx3.com-access.log combined if=$loggable; root /home/redis-ui/www/public; location ~ /.well-known { auth_basic off; auth_pam off; allow all; root /var/www/acme-challenge; } location = /robots.txt { allow all; log_not_found off; access_log off; } return 301 https://$host$request_uri; } server { server_name p3x.redis.patrikx3.com; error_log /var/log/nginx/p3x.redis.patrikx3.com-error.log; access_log /var/log/nginx/p3x.redis.patrikx3.com-access.log combined if=$loggable; root /home/redis-ui/www/public; location ~ /.well-known { auth_basic off; auth_pam off; allow all; root /var/www/acme-challenge; } location = /robots.txt { allow all; log_not_found off; access_log off; } ssl_certificate /home/redis-ui/acme/ssl/p3x.redis.patrikx3.com/fullchain.cer; ssl_certificate_key /home/redis-ui/acme/ssl//patrikx3.com/patrikx3.com.key; location / { proxy_pass "https://127.0.0.1:7843"; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header Host $host; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } listen 443 ssl http2; listen [::]:443 ssl http2; ssl on; add_header Strict-Transport-Security "max-age=31536000; " always; add_header X-Content-Type-Options nosniff; add_header X-XSS-Protection "1; mode=block"; } ``` [//]: #@corifeus-footer --- [**P3X-REDIS-UI**](https://pages.corifeus.com/redis-ui) Build v2018.9.12-5 [![Like Corifeus @ Facebook](https://img.shields.io/badge/LIKE-Corifeus-3b5998.svg)](https://www.facebook.com/corifeus.software) [![Donate for Corifeus / P3X](https://img.shields.io/badge/Donate-Corifeus-003087.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=QZVM4V6HVZJW6) [![Contact Corifeus / P3X](https://img.shields.io/badge/Contact-P3X-ff9900.svg)](https://www.patrikx3.com/en/front/contact) ## P3X Sponsors [IntelliJ - The most intelligent Java IDE](https://www.jetbrains.com) [![JetBrains](https://cdn.corifeus.com/assets/svg/jetbrains-logo.svg)](https://www.jetbrains.com/) [![NoSQLBooster](https://cdn.corifeus.com/assets/png/nosqlbooster-70x70.png)](https://www.nosqlbooster.com/) [The Smartest IDE for MongoDB](https://www.nosqlbooster.com) [//]: #@corifeus-footer:endartifacts/readme/start-up-with-electron.md000066400000000000000000000021631516251721000211600ustar00rootroot00000000000000[//]: #@corifeus-header # 📡 The built p3x-redis-ui using p3x-redis-ui-server and p3x-redis-ui-material. [//]: #@corifeus-header:end # Start up with Electron in progress... [//]: #@corifeus-footer --- [**P3X-REDIS-UI**](https://pages.corifeus.com/redis-ui) Build v2018.9.12-5 [![Like Corifeus @ Facebook](https://img.shields.io/badge/LIKE-Corifeus-3b5998.svg)](https://www.facebook.com/corifeus.software) [![Donate for Corifeus / P3X](https://img.shields.io/badge/Donate-Corifeus-003087.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=QZVM4V6HVZJW6) [![Contact Corifeus / P3X](https://img.shields.io/badge/Contact-P3X-ff9900.svg)](https://www.patrikx3.com/en/front/contact) ## P3X Sponsors [IntelliJ - The most intelligent Java IDE](https://www.jetbrains.com) [![JetBrains](https://cdn.corifeus.com/assets/svg/jetbrains-logo.svg)](https://www.jetbrains.com/) [![NoSQLBooster](https://cdn.corifeus.com/assets/png/nosqlbooster-70x70.png)](https://www.nosqlbooster.com/) [The Smartest IDE for MongoDB](https://www.nosqlbooster.com) [//]: #@corifeus-footer:endbin/000077500000000000000000000000001516251721000116265ustar00rootroot00000000000000bin/p3x-redis.js000077500000000000000000000001241516251721000140020ustar00rootroot00000000000000#!/usr/bin/env node const boot = require('p3x-redis-ui-server/src/lib/boot') boot() changelog.md000066400000000000000000000021461516251721000133320ustar00rootroot00000000000000[//]: #@corifeus-header # 📡 The built p3x-redis-ui using p3x-redis-ui-server and p3x-redis-ui-material. [//]: #@corifeus-header:end # Change log in progress ... [//]: #@corifeus-footer --- [**P3X-REDIS-UI**](https://pages.corifeus.com/redis-ui) Build v2018.9.12-5 [![Like Corifeus @ Facebook](https://img.shields.io/badge/LIKE-Corifeus-3b5998.svg)](https://www.facebook.com/corifeus.software) [![Donate for Corifeus / P3X](https://img.shields.io/badge/Donate-Corifeus-003087.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=QZVM4V6HVZJW6) [![Contact Corifeus / P3X](https://img.shields.io/badge/Contact-P3X-ff9900.svg)](https://www.patrikx3.com/en/front/contact) ## P3X Sponsors [IntelliJ - The most intelligent Java IDE](https://www.jetbrains.com) [![JetBrains](https://cdn.corifeus.com/assets/svg/jetbrains-logo.svg)](https://www.jetbrains.com/) [![NoSQLBooster](https://cdn.corifeus.com/assets/png/nosqlbooster-70x70.png)](https://www.nosqlbooster.com/) [The Smartest IDE for MongoDB](https://www.nosqlbooster.com) [//]: #@corifeus-footer:endp3xrs.json000066400000000000000000000016511516251721000130330ustar00rootroot00000000000000{ "p3xrs": { "https2": { "certs-info": "If you want to use your own certificates, you can use a relative or absolute cert and key.", "cert": "~p3x-redis-ui-server/artifacts/certs/cert.pem", "key": "~p3x-redis-ui-server/artifacts/certs/key.nopass.pem", "port-info": "this is ommitted, it will be default 7843", "port": 7843 }, "connections": { "home-dir-info": "if the dir config is empty or home, the connections are saved in the home folder, otherwise it will resolve the directory set as it is, either relative ./ or absolute starting with /. NodeJs will resolve this directory in p3xrs.connections.dir", "home-dir": "home" }, "static-info": "This is the best configuration, if it starts with ~, then it is in resolve the path in the node_modules, otherwise it resolves to the current process current working directory.", "static": "~p3x-redis-ui-material/dist" } }package.json000066400000000000000000000024231516251721000133450ustar00rootroot00000000000000{ "name": "p3x-redis-ui", "version": "2018.9.12-5", "description": "📡 The built p3x-redis-ui using p3x-redis-ui-server and p3x-redis-ui-material.", "corifeus": { "icon": "fas fa-database", "code": "2Q", "prefix": "p3x-", "type": "p3x", "opencollective": false, "publish": true, "build": true, "nodejs": "v10.10.0", "reponame": "redis-ui" }, "main": "src/index.js", "bin": { "p3x-redis": "./bin/p3x-redis.js" }, "scripts": { "test": "grunt" }, "repository": { "type": "git", "url": "https://github.com/patrikx3/redis-ui.git" }, "keywords": [ "redis", "ui", "gui", "web", "electron", "desktop", "server", "angularjs", "javascript", "material", "dark", "light" ], "author": "Patrik Laszlo ", "license": "MIT", "devDependencies": { "corifeus-builder": "^2018.9.11-0" }, "engines": { "node": ">=8.11.4" }, "homepage": "https://pages.corifeus.com/redis-ui", "dependencies": { "p3x-redis-ui-material": "^2018.9.12-6", "p3x-redis-ui-server": "^2018.9.12-5" } } redis-ui.iml000066400000000000000000000005171516251721000133050ustar00rootroot00000000000000 todo.md000066400000000000000000000033361516251721000123520ustar00rootroot00000000000000[//]: #@corifeus-header # 📡 The built p3x-redis-ui using p3x-redis-ui-server and p3x-redis-ui-material. [//]: #@corifeus-header:end # To do * icons * hash - hashtag (fontaweomse hashtag) * list - bar different up and down (fontaweomse columns) * zset - {} * string - abc * zset - bar like fontawesome cellular * tree key * filter * show count of * hash * list * set * zset * types * string * key * value * hash * key * hash key * value * list * key * index * empty to append, -1 to prepend * value * set * key * value * zset * key * score * value * type encoding * encoding * key * rename * delete * export * json tree * load types * encoding * ttl * type * size [//]: #@corifeus-footer --- [**P3X-REDIS-UI**](https://pages.corifeus.com/redis-ui) Build v2018.9.12-5 [![Like Corifeus @ Facebook](https://img.shields.io/badge/LIKE-Corifeus-3b5998.svg)](https://www.facebook.com/corifeus.software) [![Donate for Corifeus / P3X](https://img.shields.io/badge/Donate-Corifeus-003087.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=QZVM4V6HVZJW6) [![Contact Corifeus / P3X](https://img.shields.io/badge/Contact-P3X-ff9900.svg)](https://www.patrikx3.com/en/front/contact) ## P3X Sponsors [IntelliJ - The most intelligent Java IDE](https://www.jetbrains.com) [![JetBrains](https://cdn.corifeus.com/assets/svg/jetbrains-logo.svg)](https://www.jetbrains.com/) [![NoSQLBooster](https://cdn.corifeus.com/assets/png/nosqlbooster-70x70.png)](https://www.nosqlbooster.com/) [The Smartest IDE for MongoDB](https://www.nosqlbooster.com) [//]: #@corifeus-footer:end