|
1 |
| -# RedisInsight |
2 |
| - |
3 | 1 | [](https://circleci.com/gh/RedisInsight/RedisInsight/tree/latest)
|
4 | 2 |
|
5 |
| -Awesome Redis GUI written in Electron, NodeJS and React |
6 |
| - |
7 |
| -## Directory Structure |
8 |
| - |
9 |
| -- `redisinsight/ui` - Contains the frontend code |
10 |
| -- `redisinsight/api` - Contains the backend code |
11 |
| -- `docs` - Contains the documentation |
12 |
| -- `scripts` - Build scripts and other build-related files |
13 |
| -- `configs` - Webpack configuration files and other build-related files |
14 |
| -- `tests` - Contains the e2e |
15 |
| - |
16 |
| -## Plugins documentation |
17 |
| - |
18 |
| -* [Introduction](docs/plugins/introduction.md) |
19 |
| -* [Installation and Usage](docs/plugins/installation.md) |
20 |
| -* [Plugin Development](docs/plugins/development.md) |
21 |
| - |
22 |
| -## Prerequisites |
23 |
| - |
24 |
| -Make sure you have installed following packages: |
25 |
| -* [Node](https://nodejs.org/en/download/) >=14.x and <16 |
26 |
| -* [yarn](https://www.npmjs.com/package/yarn) >=1.21.3 |
27 |
| - |
28 |
| -## Installation |
29 |
| - |
30 |
| -Before development or build you have to install required dependencies |
31 |
| - |
32 |
| -```bash |
33 |
| -$ yarn install |
34 |
| -$ yarn --cwd redisinsight/api/ |
35 |
| -``` |
36 |
| - |
37 |
| -## Development |
38 |
| - |
39 |
| -There are 2 ways to develop: |
40 |
| - |
41 |
| -### Developing using electron app |
42 |
| - |
43 |
| -After you have installed all dependencies you can now run the app. |
44 |
| -Run `yarn start` to start an electron application that will watch and build for you. |
45 |
| - |
46 |
| -```bash |
47 |
| -# Development |
48 |
| -$ yarn start |
49 |
| -``` |
50 |
| - |
51 |
| -### Developing using web |
52 |
| - |
53 |
| -#### Running backend part of the app |
54 |
| - |
55 |
| -Run `yarn --cwd redisinsight/api/ start:dev` to start a local API at `localhost:5000`. |
56 |
| - |
57 |
| -```bash |
58 |
| -# Development |
59 |
| -$ yarn --cwd redisinsight/api/ start:dev |
60 |
| -``` |
61 |
| - |
62 |
| -While the API is running, open your browser and navigate to http://localhost:5000/api/docs. You should see the Swagger UI. |
63 |
| - |
64 |
| -#### Running frontend part of the app |
65 |
| - |
66 |
| -Run `yarn start:web` to start a local server for UI. |
67 |
| - |
68 |
| -```bash |
69 |
| -# Development |
70 |
| -$ yarn start:web |
71 |
| -``` |
72 |
| - |
73 |
| -Web interface will be available at http://localhost:8080 |
74 |
| - |
75 |
| -Now servers will watch for changes and automatically build for you |
76 |
| - |
77 |
| -## Build |
78 |
| - |
79 |
| -### Packaging the desktop app |
80 |
| - |
81 |
| -#### Building statics for enablement area and default plugins |
82 |
| - |
83 |
| -Run `yarn build:statics` or `yarn build:statics:win` for Windows |
84 |
| - |
85 |
| -After you have installed all dependencies you can package the app. |
86 |
| -Run `yarn package:prod` to package app for the local platform: |
87 |
| - |
88 |
| -```bash |
89 |
| -# Production |
90 |
| -$ yarn package:prod |
91 |
| -``` |
92 |
| - |
93 |
| -And packaged installer will be in the folder _./release_ |
94 |
| - |
95 |
| -### Create docker image |
96 |
| - |
97 |
| -There are 2 different docker images available |
98 |
| - |
99 |
| -- Image with API and UI |
100 |
| -- Image with API only |
101 |
| - |
102 |
| -#### Build Docker image with UI |
103 |
| - |
104 |
| -```bash |
105 |
| - docker build . |
106 |
| -``` |
107 |
| - |
108 |
| -Image exposes 5000 port |
109 |
| - |
110 |
| -Api docs - /api/docs |
111 |
| - |
112 |
| -Main UI - / |
113 |
| - |
114 |
| -Example: |
115 |
| - |
116 |
| -```bash |
117 |
| - docker build -t redisinsight . |
118 |
| -``` |
119 |
| - |
120 |
| -```bash |
121 |
| - docker run -p 5000:5000 -d --cap-add ipc_lock redisinsight |
122 |
| -``` |
123 |
| - |
124 |
| -Then api docs and main ui should be available on http://localhost:5000/api/docs and http://localhost:5000 |
125 |
| - |
126 |
| -#### Build Docker with API only |
127 |
| - |
128 |
| -Image exposes 5000 port |
129 |
| - |
130 |
| -Api docs - /api/docs |
131 |
| - |
132 |
| -Example: |
133 |
| - |
134 |
| -```bash |
135 |
| - docker build -f api.Dockerfile -t api.redisinsight . |
136 |
| -``` |
137 |
| - |
138 |
| -```bash |
139 |
| - docker run -p 5000:5000 -d --cap-add ipc_lock api.redisinsight |
140 |
| -``` |
141 |
| - |
142 |
| -Then api docs and main ui should be available on http://localhost:5000/api/docs |
143 |
| - |
144 |
| -## Tests |
145 |
| - |
146 |
| -### Running frontend tests |
| 3 | +# <img src="https://redis.com/wp-content/uploads/2019/11/ico-redisinsight.svg" alt="logo" width="25"/> RedisInsight |
147 | 4 |
|
148 |
| -#### Run UI unit tests |
| 5 | +**Best in class Redis developer GUI to view and interact with your data!** |
149 | 6 |
|
150 |
| -```bash |
151 |
| - yarn test |
152 |
| -``` |
| 7 | + |
153 | 8 |
|
154 |
| -### Running backend tests |
| 9 | +Built with love using Electron, [Elastic UI](https://elastic.github.io/eui/#/), [Monaco Editor](https://microsoft.github.io/monaco-editor/) and NodeJS. |
155 | 10 |
|
156 |
| -#### Run backend unit tests |
| 11 | +## Overview |
157 | 12 |
|
158 |
| -```bash |
159 |
| - # Plain tests |
160 |
| - yarn --cwd redisinsight/api test |
161 |
| - |
162 |
| - # Tests with coverage |
163 |
| - yarn --cwd redisinsight/api test:cov |
164 |
| -``` |
| 13 | +RedisInsight is an intuitive and efficient GUI for Redis, allowing you to interact with your databases and manage your data—with built-in support for Redis modules. |
165 | 14 |
|
166 |
| -### Run backend integration tests (using local server) |
| 15 | +### RedisInsight features: |
167 | 16 |
|
168 |
| -```bash |
169 |
| - # Plain tests |
170 |
| - yarn --cwd redisinsight/api test:api |
171 |
| - |
172 |
| - # Tests with coverage |
173 |
| - yarn --cwd redisinsight/api test:api:cov |
174 |
| -``` |
| 17 | +* Browse, filter and visualise your key-value Redis data structures |
| 18 | +* CRUD support for Lists, Hashes, Strings, Sets, Sorted Sets |
| 19 | +* CRUD support for [RedisJSON](https://oss.redis.com/redisjson/) |
| 20 | +* Visualizations of your [RediSearch](https://oss.redis.com/redisearch/) index queries |
| 21 | +* Intelligent Redis command auto-complete with support for [RedisJSON](https://oss.redis.com/redisjson/), [RediSearch](https://oss.redis.com/redisearch/), [RedisGraph](https://oss.redis.com/redisgraph/), [RedisTimeSeries](https://oss.redis.com/redistimeseries/), [RedisAI](https://oss.redis.com/redisai/) |
| 22 | +* Command-line interface (CLI) that lets you run commands against your Redis server |
| 23 | +* Ability to build your own visualization plugins |
| 24 | +* Built-in click-through guides for Redis capabilities |
| 25 | +* Oficially supported for Redis OSS, [Redis Cloud](https://redis.com/try-free/). Works with Microsoft Azure Cache for Redis (official support upcoming). |
| 26 | +* Available for macOS, Windows and Linux |
175 | 27 |
|
176 |
| -> **_NOTE_**: Using `yarn test:api*` scripts you should have redis server up and running. |
177 |
| -By default tests will look on `localhost:6379` without any auth |
178 |
| -To customize tests configs you should run test with proper environment variables |
| 28 | +Check out the [release notes](https://docs.redis.com/staging/release-ri-v2.0/ri/release-notes/). |
179 | 29 |
|
180 |
| -Example: |
| 30 | +### Telemetry |
181 | 31 |
|
182 |
| -If you have redis server running on a different host or port `somehost:7777` with default user pass `somepass` |
| 32 | +RedisInsight collects telemetry data, that is leveraged to help improve the developer experience (DX) within the app. We value your privacy and all the data collected is anonymised. Of course, you also have the option to not enable it at all. |
183 | 33 |
|
184 |
| -You should run test commands with such environment variables |
| 34 | +## Try RedisInsight |
185 | 35 |
|
186 |
| -```bash |
187 |
| - # Plain tests |
188 |
| - TEST_REDIS_HOST=somehost \ |
189 |
| - TEST_REDIS_PORT=7777 \ |
190 |
| - TEST_REDIS_PASSWORD-somepass \ |
191 |
| - yarn --cwd redisinsight/api test:api |
192 |
| -``` |
| 36 | +This repository includes the code for the newly released in public preview RedisInsight 2.0. Check out the [blogpost](https://redis.com/blog/introducing-redisinsight-2/) announcing it. |
193 | 37 |
|
194 |
| -You can find all possible environment variable available in the [constants.ts](redisinsight/api/test/helpers/constants.ts) file |
| 38 | +The current GA version of RedisInsight is 1.11. You can run RedisInsight 2.0 along with the GA version. |
195 | 39 |
|
196 |
| -### Run backend integration tests (using docker) |
| 40 | +Both versions are available for download as a packaged solution for free from [here](https://docs.redis.com/latest/ri/installing/). |
197 | 41 |
|
198 |
| -Here you should not care about tests and local redis database configuration |
| 42 | +## Feedback |
199 | 43 |
|
200 |
| -We will spin up server inside docker container and run tests over it |
| 44 | +* Request a new [feature](https://github.com/RedisInsight/RedisInsight/issues/new?assignees=&labels=&template=feature_request.md&title=%5BFeature+Request%5D%3A) |
| 45 | +* Upvote [popular feature requests](https://github.com/RedisInsight/RedisInsight/issues?q=is%3Aopen+is%3Aissue+label%3Afeature+sort%3Areactions-%2B1-desc) |
| 46 | +* File a [bug](https://github.com/RedisInsight/RedisInsight/issues/new?assignees=&labels=&template=bug_report.md&title=%5BBug%5D%3A) |
201 | 47 |
|
202 |
| -```bash |
203 |
| - # run this this command |
204 |
| - ./redisinsight/api/test/test-runs/start-test-run.sh -r oss-st-6 |
205 |
| -``` |
206 |
| -- -r - is the Redis Test Environment name |
207 | 48 |
|
208 |
| -We are supporting several test environments to run tests on various Redis databases: |
209 |
| -- **oss-st-5** - _OSS Standalone v5_ |
210 |
| -- **oss-st-5-pass** - _OSS Standalone v5 with admin pass required_ |
211 |
| -- **oss-st-6** - _OSS Standalone v6 and all modules_ |
212 |
| -- **oss-st-6-tls** - _OSS Standalone v6 with TLS enabled_ |
213 |
| -- **oss-st-6-tls-auth** - _OSS Standalone v6 with TLS auth required_ |
214 |
| -- **oss-clu** - _OSS Cluster_ |
215 |
| -- **oss-clu-tls** - _OSS Cluster with TLS enabled_ |
216 |
| -- **oss-sent** - _OSS Sentinel_ |
217 |
| -- **re-st** - _Redis Enterprise with Standalone inside_ |
218 |
| -- **re-clu** - _Redis Enterprise with Cluster inside_ |
| 49 | +## RedisInsight Plugins |
219 | 50 |
|
| 51 | +With RedisInsight you can now also extend the core functionality by building your own data visualizations. See our wiki for more information. |
220 | 52 |
|
221 |
| -### Running E2E tests |
| 53 | +## Contributing |
222 | 54 |
|
223 |
| -Install E2E tests deps |
| 55 | +If you would like to contribute to the code base or fix and issue, please consult the wiki. |
224 | 56 |
|
225 |
| -```bash |
226 |
| - yarn --cwd tests/e2e |
227 |
| -``` |
| 57 | +## License |
228 | 58 |
|
229 |
| -Run E2E tests |
| 59 | +RedisInsight is licensed under [SSPL](/LICENSE) license. |
230 | 60 |
|
231 |
| -```bash |
232 |
| - yarn --cwd tests/e2e test:chrome |
233 |
| -``` |
0 commit comments