Skip to content

Commit 4206944

Browse files
author
Roman.Sergeenko
committed
Merge branch 'main' into feature/RI-1868-change-fonts
2 parents c770a89 + aa5d267 commit 4206944

File tree

82 files changed

+1272
-577
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

82 files changed

+1272
-577
lines changed

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
name: Bug report
33
about: Create a report to help us improve
44
title: "[Bug]:"
5-
labels: ''
5+
labels: bug
66
assignees: ''
77

88
---

.github/ISSUE_TEMPLATE/feature_request.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
name: Feature request
33
about: Request a feature or submit an idea
44
title: "[Feature Request]:"
5-
labels: ''
5+
labels: feature
66
assignees: ''
77

88
---

.github/redisinsight_browser.png

211 KB
Loading

LICENSE

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
Server Side Public License
22
VERSION 1, OCTOBER 16, 2018
33

4-
Copyright © 2018 MongoDB, Inc.
4+
Copyright © 2021 Redis, Inc.
55

66
Everyone is permitted to copy and distribute verbatim copies of this
77
license document, but changing it is not allowed.
@@ -500,7 +500,7 @@
500500

501501
14. Revised Versions of this License.
502502

503-
MongoDB, Inc. may publish revised and/or new versions of the Server Side
503+
Redis, Inc. may publish revised and/or new versions of the Server Side
504504
Public License from time to time. Such new versions will be similar in
505505
spirit to the present version, but may differ in detail to address new
506506
problems or concerns.
@@ -509,9 +509,9 @@
509509
specifies that a certain numbered version of the Server Side Public
510510
License “or any later version” applies to it, you have the option of
511511
following the terms and conditions either of that numbered version or of
512-
any later version published by MongoDB, Inc. If the Program does not
512+
any later version published by Redis, Inc. If the Program does not
513513
specify a version number of the Server Side Public License, you may
514-
choose any version ever published by MongoDB, Inc.
514+
choose any version ever published by Redis, Inc.
515515

516516
If the Program specifies that a proxy can decide which future versions of
517517
the Server Side Public License can be used, that proxy's public statement

README.md

Lines changed: 42 additions & 204 deletions
Original file line numberDiff line numberDiff line change
@@ -1,233 +1,71 @@
1-
# RedisInsight
1+
[![Forum](https://img.shields.io/badge/Forum-RedisInsight-red)](https://forum.redis.com/c/redisinsight/65)
2+
[![Discord](https://img.shields.io/discord/697882427875393627?style=flat-square)](https://discord.gg/QUkjSsk)
23

3-
[![CircleCI](https://circleci.com/gh/RedisInsight/RedisInsight/tree/latest.svg?style=svg)](https://circleci.com/gh/RedisInsight/RedisInsight/tree/latest)
4+
# <img src="https://redis.com/wp-content/uploads/2019/11/ico-redisinsight.svg" alt="logo" width="25"/> RedisInsight
45

5-
Awesome Redis GUI written in Electron, NodeJS and React
6+
**Best in class Redis developer GUI to view and interact with your data! [Download it from here](https://redis.com/redis-enterprise/redis-insight/#insight-form)!**
67

7-
## Directory Structure
8+
![RedisInsight Browser screenshot](/.github/redisinsight_browser.png)
89

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
10+
Built with love using [Electron](https://www.electronjs.org/), [Elastic UI](https://elastic.github.io/eui/#/), [Monaco Editor](https://microsoft.github.io/monaco-editor/) and NodeJS.
1511

16-
## Plugins documentation
12+
## Overview
1713

18-
* [Introduction](docs/plugins/introduction.md)
19-
* [Installation and Usage](docs/plugins/installation.md)
20-
* [Plugin Development](docs/plugins/development.md)
14+
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.
2115

22-
## Prerequisites
16+
### RedisInsight Highlights:
2317

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
18+
* Browse, filter and visualise your key-value Redis data structures
19+
* CRUD support for Lists, Hashes, Strings, Sets, Sorted Sets
20+
* CRUD support for [RedisJSON](https://oss.redis.com/redisjson/)
21+
* Introducing Workbench - advanced command line interface with intelligent command auto-complete and complex data visualizations
22+
* Command auto-complete support for [RediSearch](https://oss.redis.com/redisearch/), [RedisJSON](https://oss.redis.com/redisjson/), [RedisGraph](https://oss.redis.com/redisgraph/), [RedisTimeSeries](https://oss.redis.com/redistimeseries/), [RedisAI](https://oss.redis.com/redisai/)
23+
* Visualizations of your [RediSearch](https://oss.redis.com/redisearch/) index queries and aggregations
24+
* Ability to build your own data visualization plugins
25+
* Built-in click-through guides for Redis capabilities
26+
* Oficially supported for Redis OSS, [Redis Cloud](https://redis.com/try-free/). Works with Microsoft Azure Cache for Redis (official support upcoming).
27+
* Available for macOS, Windows and Linux
2728

28-
## Installation
29+
Check out the [release notes](https://docs.redis.com/latest/ri/release-notes/).
2930

30-
Before development or build you have to install required dependencies
31+
## Get started with RedisInsight
3132

32-
```bash
33-
$ yarn install
34-
$ yarn --cwd redisinsight/api/
35-
```
33+
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.
3634

37-
## Development
35+
The current GA version of RedisInsight is 1.11. You can install RedisInsight 2.0 along with the GA version.
3836

39-
There are 2 ways to develop:
37+
### Installable
38+
Available to download for free from [here](https://redis.com/redis-enterprise/redis-insight/#insight-form).
4039

41-
### Developing using electron app
40+
### Build
41+
Alternatively you can also build from source. See our wiki for instructions.
4242

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.
43+
* [How to build](https://github.com/RedisInsight/RedisInsight/wiki/How-to-build-and-contribute)
4544

46-
```bash
47-
# Development
48-
$ yarn start
49-
```
45+
## Feedback
5046

51-
### Developing using web
47+
* Request a new [feature](https://github.com/RedisInsight/RedisInsight/issues/new?assignees=&labels=&template=feature_request.md&title=%5BFeature+Request%5D%3A)
48+
* Upvote [popular feature requests](https://github.com/RedisInsight/RedisInsight/issues?q=is%3Aopen+is%3Aissue+label%3Afeature+sort%3Areactions-%2B1-desc)
49+
* File a [bug](https://github.com/RedisInsight/RedisInsight/issues/new?assignees=&labels=&template=bug_report.md&title=%5BBug%5D%3A)
5250

53-
#### Running backend part of the app
5451

55-
Run `yarn --cwd redisinsight/api/ start:dev` to start a local API at `localhost:5000`.
52+
## RedisInsight Plugins
5653

57-
```bash
58-
# Development
59-
$ yarn --cwd redisinsight/api/ start:dev
60-
```
54+
With RedisInsight you can now also extend the core functionality by building your own data visualizations. See our wiki for more information.
6155

62-
While the API is running, open your browser and navigate to http://localhost:5000/api/docs. You should see the Swagger UI.
56+
* [Plugin Documentation](https://github.com/RedisInsight/RedisInsight/wiki/Plugin-Documentation)
6357

64-
#### Running frontend part of the app
58+
## Contributing
6559

66-
Run `yarn start:web` to start a local server for UI.
60+
If you would like to contribute to the code base or fix and issue, please consult the wiki.
6761

68-
```bash
69-
# Development
70-
$ yarn start:web
71-
```
62+
* [How to build and contribute](https://github.com/RedisInsight/RedisInsight/wiki/How-to-build-and-contribute)
7263

73-
Web interface will be available at http://localhost:8080
64+
## Telemetry
7465

75-
Now servers will watch for changes and automatically build for you
66+
RedisInsight includes an opt-in telemetry system, that is leveraged to help improve the developer experience (DX) within the app. We value your privacy, so stay assured, that all the data collected is anonymised.
7667

77-
## Build
68+
## License
7869

79-
### Packaging the desktop app
70+
RedisInsight is licensed under [SSPL](/LICENSE) license.
8071

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
147-
148-
#### Run UI unit tests
149-
150-
```bash
151-
yarn test
152-
```
153-
154-
### Running backend tests
155-
156-
#### Run backend unit tests
157-
158-
```bash
159-
# Plain tests
160-
yarn --cwd redisinsight/api test
161-
162-
# Tests with coverage
163-
yarn --cwd redisinsight/api test:cov
164-
```
165-
166-
### Run backend integration tests (using local server)
167-
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-
```
175-
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
179-
180-
Example:
181-
182-
If you have redis server running on a different host or port `somehost:7777` with default user pass `somepass`
183-
184-
You should run test commands with such environment variables
185-
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-
```
193-
194-
You can find all possible environment variable available in the [constants.ts](redisinsight/api/test/helpers/constants.ts) file
195-
196-
### Run backend integration tests (using docker)
197-
198-
Here you should not care about tests and local redis database configuration
199-
200-
We will spin up server inside docker container and run tests over it
201-
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-
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_
219-
220-
221-
### Running E2E tests
222-
223-
Install E2E tests deps
224-
225-
```bash
226-
yarn --cwd tests/e2e
227-
```
228-
229-
Run E2E tests
230-
231-
```bash
232-
yarn --cwd tests/e2e test:chrome
233-
```

docs/plugins/installation.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ authors to avoid automatic execution of malicious code.
99

1010
1. Download the plugin for the Workbench.
1111
2. Open the `plugins` folder with the following path
12-
* For MacOs: `<usersHomeDir>/.redisinsight-v2.0/plugins`
13-
* For Windows: `C:\Users\{Username}\.redisinsight-v2.0\plugins`
14-
* For Linux: `<usersHomeDir>/.redisinsight-v2.0/plugins`
12+
* For MacOs: `<usersHomeDir>/.redisinsight-preview/plugins`
13+
* For Windows: `C:/Users/{Username}/.redisinsight-preview/plugins`
14+
* For Linux: `<usersHomeDir>/.redisinsight-preview/plugins`
1515
3. Add the folder with plugin to the `plugins` folder
1616

1717
To see the uploaded plugin visualizations in the command results, reload the Workbench

redisinsight/api/src/__mocks__/analytics.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
export const mockInstancesAnalyticsService = () => ({
2+
sendInstanceListReceivedEvent: jest.fn(),
23
sendInstanceAddedEvent: jest.fn(),
34
sendInstanceAddFailedEvent: jest.fn(),
45
sendInstanceEditedEvent: jest.fn(),

redisinsight/api/src/constants/telemetry-events.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ export enum TelemetryEvents {
1111
RedisInstanceDeleted = 'CONFIG_DATABASES_DATABASE_DELETED',
1212
RedisInstanceEditedByUser = 'CONFIG_DATABASES_DATABASE_EDITED_BY_USER',
1313
RedisInstanceConnectionFailed = 'DATABASE_CONNECTION_FAILED',
14+
RedisInstanceListReceived = 'CONFIG_DATABASES_DATABASE_LIST_DISPLAYED',
1415

1516
// Events for autodiscovery flows
1617
REClusterDiscoverySucceed = 'CONFIG_DATABASES_RE_CLUSTER_AUTODISCOVERY_SUCCEEDED',

0 commit comments

Comments
 (0)