Skip to content

Commit 0af059b

Browse files
Chore: Fix typos and grammatical errors (#1404)
Signed-off-by: Sebastien Dionne <[email protected]> Co-authored-by: German Osin <[email protected]>
1 parent 2ead0f5 commit 0af059b

File tree

11 files changed

+103
-106
lines changed

11 files changed

+103
-106
lines changed

README.md

Lines changed: 12 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -72,28 +72,25 @@ Kafbat UI wraps major functions of Apache Kafka with an intuitive user interface
7272
![Interface](documentation/images/Interface.gif)
7373

7474
## Topics
75-
Kafbat UI makes it easy for you to create topics in your browser by several clicks,
76-
pasting your own parameters, and viewing topics in the list.
75+
Kafbat UI makes it easy for you to create topics in your browser with just a few clicks, by pasting your own parameters, and viewing topics in the list.
7776

7877
![Create Topic](documentation/images/Create_topic_kafka-ui.gif)
7978

80-
It's possible to jump from connectors view to corresponding topics and from a topic to consumers (back and forth) for more convenient navigation.
81-
connectors, overview topic settings.
79+
You can jump from the connectors view to corresponding topics and from a topic to consumers (back and forth) for more convenient navigation, including connectors and overview topic settings.
8280

8381
![Connector_Topic_Consumer](documentation/images/Connector_Topic_Consumer.gif)
8482

8583
### Messages
86-
Let's say we want to produce messages for our topic. With the Kafbat UI we can send or write data/messages to the Kafka topics without effort by specifying parameters, and viewing messages in the list.
84+
Suppose you want to produce messages for your topic. With Kafbat UI, you can easily send or write data/messages to Kafka topics by specifying parameters and viewing messages in the list.
8785

8886
![Produce Message](documentation/images/Create_message_kafka-ui.gif)
8987

9088
## Schema registry
91-
There are 3 supported types of schemas: Avro®, JSON Schema, and Protobuf schemas.
89+
There are three supported types of schemas: Avro®, JSON Schema, and Protobuf schemas.
9290

9391
![Create Schema Registry](documentation/images/Create_schema.gif)
9492

95-
Before producing avro/protobuf encoded messages, you have to add a schema for the topic in Schema Registry. Now all these steps are easy to do
96-
with a few clicks in a user-friendly interface.
93+
Before producing Avro/Protobuf encoded messages, you need to add a schema for the topic in the Schema Registry. All these steps are now easy to do with just a few clicks in a user-friendly interface.
9794

9895
![Avro Schema Topic](documentation/images/Schema_Topic.gif)
9996

@@ -111,7 +108,7 @@ docker run -it -p 8080:8080 -e DYNAMIC_CONFIG_ENABLED=true ghcr.io/kafbat/kafka-
111108

112109
Then access the web UI at [http://localhost:8080](http://localhost:8080)
113110

114-
The command is sufficient to try things out. When you're done trying things out, you can proceed with a [persistent installation](https://ui.docs.kafbat.io/quick-start/persistent-start)
111+
This command is sufficient to try things out. When you're done, you can proceed with a [persistent installation](https://ui.docs.kafbat.io/quick-start/persistent-start).
115112

116113
## Persistent installation
117114

@@ -146,24 +143,24 @@ Please refer to our [configuration](https://ui.docs.kafbat.io/configuration/conf
146143
147144
## Building from sources
148145
149-
[Quick start](https://ui.docs.kafbat.io/development/building/prerequisites) with building
146+
[Quick start](https://ui.docs.kafbat.io/development/building/prerequisites) for building from source
150147
151148
## Liveliness and readiness probes
152-
Liveliness and readiness endpoint is at `/actuator/health`.<br/>
153-
Info endpoint (build info) is located at `/actuator/info`.
149+
The liveness and readiness endpoint is at `/actuator/health`.<br/>
150+
The info endpoint (build info) is located at `/actuator/info`.
154151

155152
# Configuration options
156153

157-
All the environment variables/config properties could be found [here](https://ui.docs.kafbat.io/configuration/misc-configuration-properties).
154+
All environment variables and configuration properties can be found [here](https://ui.docs.kafbat.io/configuration/misc-configuration-properties).
158155

159156
# Contributing
160157

161-
Please refer to [contributing guide](https://ui.docs.kafbat.io/development/contributing), we'll guide you from there.
158+
Please refer to the [contributing guide](https://ui.docs.kafbat.io/development/contributing); we'll guide you from there.
162159

163160
# Support
164161

165162
As we're fully independent, team members contribute in their free time.
166-
Your support is crucial for us, if you wish to sponsor us, take a look [here](https://github.com/sponsors/kafbat)
163+
Your support is crucial for us, if you wish to sponsor us, take a look [here](https://github.com/sponsors/kafbat)
167164

168165
# Powered by
169166

api/src/main/java/io/kafbat/ui/config/McpConfig.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,12 +44,12 @@ public McpAsyncServer mcpServer(WebFluxSseServerTransportProvider transport) {
4444
// Configure server capabilities with resource support
4545
var capabilities = McpSchema.ServerCapabilities.builder()
4646
.resources(false, true)
47-
.tools(true) // Tool support with list changes notifications
47+
.tools(true) // Tools support with list changes notifications
4848
.prompts(false) // Prompt support with list changes notifications
4949
.logging() // Logging support
5050
.build();
5151

52-
// Create the server with both tool and resource capabilities
52+
// Create the server with both tools and resource capabilities
5353
return McpServer.async(transport)
5454
.serverInfo("Kafka UI MCP", "0.0.1")
5555
.capabilities(capabilities)
Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
# Descriptions of docker-compose configurations (*.yaml)
22

3-
1. [kafka-ui.yaml](./kafbat-ui.yaml) - Default configuration with 2 kafka clusters with two nodes of Schema Registry, one kafka-connect and a few dummy topics.
4-
2. [kafka-ui-ssl.yml](./kafka-ssl.yml) - Connect to Kafka via TLS/SSL
5-
3. [kafka-cluster-sr-auth.yaml](./cluster-sr-auth.yaml) - Schema registry with authentication.
3+
1. [kafka-ui.yaml](./kafbat-ui.yaml) - Default configuration with 2 Kafka clusters with two nodes of Schema Registry, one Kafka Connect, and a few dummy topics.
4+
2. [kafka-ui-ssl.yml](./kafka-ssl.yml) - Connect to Kafka via TLS/SSL.
5+
3. [kafka-cluster-sr-auth.yaml](./cluster-sr-auth.yaml) - Schema Registry with authentication.
66
4. [kafka-ui-auth-context.yaml](./auth-context.yaml) - Basic (username/password) authentication with custom path (URL) (issue 861).
7-
5. [e2e-tests.yaml](./e2e-tests.yaml) - Configuration with different connectors (github-source, s3, sink-activities, source-activities) and Ksql functionality.
8-
6. [kafka-ui-jmx-secured.yml](./ui-jmx-secured.yml) - Kafkas JMX with SSL and authentication.
9-
7. [kafka-ui-reverse-proxy.yaml](./nginx-proxy.yaml) - An example for using the app behind a proxy (like nginx).
10-
8. [kafka-ui-sasl.yaml](./ui-sasl.yaml) - SASL auth for Kafka.
11-
9. [kafka-ui-traefik-proxy.yaml](./traefik-proxy.yaml) - Traefik specific proxy configuration.
12-
10. [kafka-ui-with-jmx-exporter.yaml](./ui-with-jmx-exporter.yaml) - A configuration with 2 kafka clusters with enabled prometheus jmx exporters instead of jmx.
13-
11. [kafka-with-zookeeper.yaml](./kafka-zookeeper.yaml) - An example for using kafka with zookeeper
7+
5. [e2e-tests.yaml](./e2e-tests.yaml) - Configuration with different connectors (github-source, s3, sink-activities, source-activities) and KSQL functionality.
8+
6. [kafka-ui-jmx-secured.yml](./ui-jmx-secured.yml) - Kafka's JMX with SSL and authentication.
9+
7. [kafka-ui-reverse-proxy.yaml](./nginx-proxy.yaml) - An example of using the app behind a proxy (like nginx).
10+
8. [kafka-ui-sasl.yaml](./ui-sasl.yaml) - SASL authentication for Kafka.
11+
9. [kafka-ui-traefik-proxy.yaml](./traefik-proxy.yaml) - Traefik-specific proxy configuration.
12+
10. [kafka-ui-with-jmx-exporter.yaml](./ui-with-jmx-exporter.yaml) - A configuration with 2 Kafka clusters with enabled Prometheus JMX exporters instead of JMX.
13+
11. [kafka-with-zookeeper.yaml](./kafka-zookeeper.yaml) - An example of using Kafka with ZooKeeper.

e2e-playwright/README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ End-to-End UI test automation using **Playwright**, **Cucumber.js**, and **TypeS
1010

1111
```bash
1212
Local run:
13-
Run kafbat (docker compose -f ./documentation/compose/e2e-tests.yaml up -d)
13+
Run Kafbat (docker compose -f ./documentation/compose/e2e-tests.yaml up -d)
1414
npm install
1515
npx playwright install
1616

@@ -24,7 +24,7 @@ npm run debug
2424
npm run test:failed
2525

2626

27-
Gihub action CI example
27+
GitHub Actions CI example
2828
name: CI
2929

3030
on:
@@ -53,4 +53,4 @@ jobs:
5353

5454
- name: 🚀 Run tests with ENV=prod
5555
run: ENV=prod HEAD=false BASEURL=http://localhost:8080 npm run test
56-
56+
```

frontend/README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ Web UI for managing Apache Kafka clusters
1616

1717
## Getting started
1818

19-
Go to react app folder
19+
Go to the React app folder
2020
```sh
2121
cd ./frontend
2222
```
@@ -42,15 +42,15 @@ Install dependencies
4242
pnpm install
4343
```
4444

45-
Generate API clients from OpenAPI document
45+
Generate API clients from the OpenAPI document
4646
```sh
4747
pnpm gen:sources
4848
```
4949

5050
## Start application
5151
### Proxying API Requests in Development
5252

53-
Create or update existing `.env.local` file with
53+
Create or update the existing `.env.local` file with
5454
```
5555
VITE_DEV_PROXY= https://api.server # your API server
5656
```
@@ -62,14 +62,14 @@ pnpm dev
6262

6363
### Docker way
6464

65-
Have to be run from root directory.
65+
Must be run from the root directory.
6666

6767
Start Kafbat UI with your Kafka clusters:
6868
```sh
6969
docker-compose -f ./documentation/compose/kafbat-ui.yaml up
7070
```
7171

72-
Make sure that none of the `.env*` files contain `DEV_PROXY` variable
72+
Make sure that none of the `.env*` files contain the `DEV_PROXY` variable
7373

7474
Run the application
7575
```sh

frontend/src/lib/hooks/api/ksqlDb.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ export function useExecuteKsqlkDbQueryMutation() {
4141
const getFormattedErrorFromTableData = (
4242
responseValues: KsqlTableResponse['values']
4343
): { title: string; message: string } => {
44-
// We expect someting like that
44+
// We expect something like that
4545
// [[
4646
// "@type",
4747
// "error_code",
@@ -55,7 +55,7 @@ const getFormattedErrorFromTableData = (
5555
if (!responseValues || !responseValues.length) {
5656
return {
5757
title: 'Unknown error',
58-
message: 'Recieved empty response',
58+
message: 'Received empty response',
5959
};
6060
}
6161

frontend/src/lib/permissions.ts

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -54,22 +54,22 @@ const valueMatches = (regexp: string | undefined, val: string | undefined) => {
5454
};
5555

5656
/**
57-
* @description it the logic behind depending on the roles whether a certain action
58-
* is permitted or not the philosophy is inspired from Headless UI libraries where
59-
* you separate the logic from the renderer besides the Creation process which is handled by isPermittedToCreate
57+
* @description The logic behind determining whether a certain action
58+
* is permitted or not depending on the roles. The philosophy is inspired by Headless UI libraries where
59+
* you separate the logic from the renderer, besides the Creation process which is handled by isPermittedToCreate.
6060
*
61-
* Algorithm: we Mapped the cluster name and the resource name , because all the actions in them are
62-
* constant and limited and hence faster lookup approach
61+
* Algorithm: We mapped the cluster name and the resource name, because all the actions in them are
62+
* constant and limited, and hence a faster lookup approach.
6363
*
64-
* @example you can use this in the hook format where it used in , or if you want to calculate it dynamically
65-
* you can call this dynamically in your component but the render is on you from that point on
64+
* @example You can use this in the hook format where it is used, or if you want to calculate it dynamically,
65+
* you can call this dynamically in your component, but the render is on you from that point on.
6666
*
67-
* Don't use this anywhere , use the hook version in the component for declarative purposes
67+
* Don't use this anywhere; use the hook version in the component for declarative purposes.
6868
*
69-
* Array action approach bear in mind they should be from the same resource with the same name restrictions, then the logic it
70-
* will try to find every element from the given array inside the permissions data
69+
* Array action approach: bear in mind they should be from the same resource with the same name restrictions; then the logic
70+
* will try to find every element from the given array inside the permissions data.
7171
*
72-
* DON'T use the array approach until it is necessary to do so
72+
* DON'T use the array approach unless it is necessary to do so.
7373
*
7474
* */
7575
export function isPermitted({
@@ -113,15 +113,15 @@ export function isPermitted({
113113

114114
/**
115115
* @description it the logic behind depending on create roles, since create has extra custom permission logic that is why
116-
* it is seperated from the others
116+
* * it is seperated from the others
117117
*
118-
* Algorithm: we Mapped the cluster name and the resource name , because all the actions in them are
119-
* constant and limited and hence faster lookup approach
118+
* Algorithm: We mapped the cluster name and the resource name, because all the actions in them are
119+
* constant and limited, and hence faster lookup approach.
120120
*
121-
* @example you can use this in the hook format where it used in , or if you want to calculate it dynamically
122-
* you can call this dynamically in your component but the render is on you from that point on
121+
* @example You can use this in the hook format where it is used, or if you want to calculate it dynamically,
122+
* you can call this dynamically in your component, but the render is on you from that point on.
123123
*
124-
* Don't use this anywhere , use the hook version in the component for declarative purposes
124+
* Don't use this anywhere; use the hook version in the component for declarative purposes.
125125
*
126126
* */
127127
export function isPermittedToCreate({

serde-api/src/main/java/io/kafbat/ui/serde/api/DeserializeResult.java

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,11 @@ public final class DeserializeResult {
1414
*/
1515
public enum Type {
1616
/**
17-
* Content is the string. Will be shown as is.
17+
* Content is a string. Will be shown as is.
1818
*/
1919
STRING,
2020
/**
21-
* Content is the json object. Will be parsed by Jackson object mapper.
21+
* Content is a JSON object. Will be parsed by the Jackson object mapper.
2222
*/
2323
JSON
2424
;
@@ -42,26 +42,26 @@ public DeserializeResult(String result, Type type, Map<String, Object> additiona
4242
}
4343

4444
/**
45-
* Getters for result.
45+
* Getter for result.
4646
* @return string representation of deserialized binary data, can be null
4747
*/
4848
public String getResult() {
4949
return result;
5050
}
5151

5252
/**
53-
* Will be show as json dictionary in UI (serialized with Jackson object mapper).
54-
* @return additional information about deserialized value.
53+
* Will be shown as a JSON dictionary in the UI (serialized with the Jackson object mapper).
54+
* @return additional information about the deserialized value.
5555
* It is recommended to use primitive types and strings for values.
5656
*/
5757
public Map<String, Object> getAdditionalProperties() {
5858
return additionalProperties;
5959
}
6060

6161
/**
62-
* Type of deserialized result. Will be used as hint for some internal logic
63-
* @return type of deserialized result. Will be used as hint for some internal logic
64-
* (ex. if type==STRING smart filters won't try to parse it as json for further usage)
62+
* Type of deserialized result. Will be used as a hint for some internal logic.
63+
* @return type of deserialized result. Will be used as a hint for some internal logic
64+
* (ex., if type==STRING, smart filters won't try to parse it as JSON for further usage)
6565
*/
6666
public Type getType() {
6767
return type;

serde-api/src/main/java/io/kafbat/ui/serde/api/PropertyResolver.java

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66

77
/**
88
* Provides access to configuration properties.
9-
*Actual implementation uses {@code org.springframework.boot.context.properties.bind.Binder} class
10-
* to bind values to target types. Target type params can be custom configs classes, not only simple types and strings.
9+
* Actual implementation uses {@code org.springframework.boot.context.properties.bind.Binder} class
10+
* to bind values to target types. Target type params can be custom config classes, not only simple types and strings.
1111
*
1212
*/
1313
public interface PropertyResolver {
@@ -17,30 +17,30 @@ public interface PropertyResolver {
1717
* @param <T> the type of the property
1818
* @param key property name
1919
* @param targetType type of property value
20-
* @return property value or empty {@code Optional} if property not found
20+
* @return property value or empty {@code Optional} if property is not found
2121
*/
2222
<T> Optional<T> getProperty(String key, Class<T> targetType);
2323

2424

2525
/**
26-
* Get list-property value by name
26+
* Get list property value by name.
2727
*
2828
* @param <T> the type of the item
2929
* @param key list property name
3030
* @param itemType type of list element
31-
* @return list property value or empty {@code Optional} if property not found
31+
* @return list property value or empty {@code Optional} if property is not found
3232
*/
3333
<T> Optional<List<T>> getListProperty(String key, Class<T> itemType);
3434

3535
/**
36-
* Get map-property value by name
36+
* Get map property value by name.
3737
*
38-
* @param key map-property name
38+
* @param key map property name
3939
* @param keyType type of map key
4040
* @param valueType type of map value
4141
* @param <K> the type of the key
4242
* @param <V> the type of the value
43-
* @return map-property value or empty {@code Optional} if property not found
43+
* @return map property value or empty {@code Optional} if property is not found
4444
*/
4545
<K, V> Optional<Map<K, V>> getMapProperty(String key, Class<K> keyType, Class<V> valueType);
4646

serde-api/src/main/java/io/kafbat/ui/serde/api/SchemaDescription.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ public final class SchemaDescription {
1212

1313
/**
1414
* Constructor for {@code SchemaDescription}.
15-
* @param schema schema descriptions.
16-
* If contains json-schema (preferred) UI will use it for validation and sample data generation.
17-
* @param additionalProperties additional properties about schema (may be rendered in UI in the future)
15+
* @param schema schema description.
16+
* If it contains a JSON schema (preferred), the UI will use it for validation and sample data generation.
17+
* @param additionalProperties additional properties about the schema (may be rendered in the UI in the future)
1818
*/
1919
public SchemaDescription(String schema, Map<String, Object> additionalProperties) {
2020
this.schema = schema;
@@ -23,15 +23,15 @@ public SchemaDescription(String schema, Map<String, Object> additionalProperties
2323

2424
/**
2525
* Schema description text. Can be null.
26-
* @return schema description text. Preferably contains json-schema. Can be null.
26+
* @return schema description text. Preferably contains a JSON schema. Can be null.
2727
*/
2828
public String getSchema() {
2929
return schema;
3030
}
3131

3232
/**
33-
* Additional properties about schema.
34-
* @return additional properties about schema
33+
* Additional properties about the schema.
34+
* @return additional properties about the schema
3535
*/
3636
public Map<String, Object> getAdditionalProperties() {
3737
return additionalProperties;

0 commit comments

Comments
 (0)