diff --git a/README.md b/README.md
index 2245bd92..e90bac6f 100644
--- a/README.md
+++ b/README.md
@@ -9,23 +9,23 @@
## Motivation
Evans has been created to use easier than other existing gRPC clients.
-If you want to keep your product quality, you must use CI with gRPC testing, should not do use manually testing.
+If you want to keep your product quality, you must use CI with gRPC testing, should not do use manual testing.
Evans will complete your other use cases just like:
- Manually gRPC API inspection
- To automate some tasks by scripting
-Above use cases is corresponding to Evans's two modes, REPL mode, and CLI mode.
+The above use cases are corresponding to Evans's two modes, REPL mode, and CLI mode.
## REPL mode
![Evans](./evans1.gif)
REPL mode is the solution for first use case.
-You can use it without thinking like package name, service name, RPC name, command usage, and so on because REPL mode has powerful completion!
+You can use it without thinking like the package name, service name, RPC name, command usage, and so on because REPL mode has powerful completion!
## CLI mode
![Evans](./evans2.gif)
-CLI mode is stateless mode just like [grpc-ecosystem/polyglot](https://github.com/grpc-ecosystem/polyglot).
+CLI mode is a stateless mode just like [grpc-ecosystem/polyglot](https://github.com/grpc-ecosystem/polyglot).
It sends one request per one command as its name suggests.
So it is based on UNIX philosophy.
@@ -64,7 +64,7 @@ So, you can format it by any commands like `jq`. Also, if you want to use the sa
## Installation
-Highly recommended methods are GitHub Releases or Homebrew because these can be software update automatically by the built-in feature in Evans.
+Highly recommended methods are GitHub Releases or Homebrew because these can be updated automatically by the built-in feature in Evans.
### From GitHub Releases
Please see [GitHub Releases](https://github.com/ktr0731/evans/releases).
@@ -80,7 +80,7 @@ $ brew install evans
```
### **[Not-recommended]** go get
-Go v1.12 (with mod-aware mode) or later required.
+Go v1.13 (with mod-aware mode) or later is required.
`go get` installation is not supported officially.
``` sh
$ go get github.com/ktr0731/evans
@@ -96,17 +96,17 @@ The proto file which read in the demonstration and its implementation are availa
Enter to REPL.
``` sh
$ cd grpc-test
-$ evans api/api.proto
+$ evans repl api/api.proto
```
If your server is enabling [gRPC reflection](https://github.com/grpc/grpc/blob/master/doc/server-reflection.md), you can launch Evans with only `-r` (`--reflection`) option.
``` sh
-$ evans -r
+$ evans -r repl
```
Also if the server requires secure TLS connections, you can launch Evans with the `-t` (`--tls`) option.
``` sh
-$ evans --tls --host example.com -r
+$ evans --tls --host example.com -r repl
```
To show package names of proto files REPL read:
@@ -317,8 +317,8 @@ name (TYPE_STRING) => bar
name (TYPE_STRING) =>
```
-### Skip the rest of fields
-Evans recognizes CTRL-C as a special key that skips the rest of fields in the current message type.
+### Skip the rest of the fields
+Evans recognizes CTRL-C as a special key that skips the rest of the fields in the current message type.
For example, we assume that we are inputting `Request` described in the following message:
``` proto
@@ -377,7 +377,7 @@ $ cat request.json
"name": "ktr"
}
-$ evans --service Example --call Unary --file request.json
+$ evans --service Example cli --call Unary --file request.json
{
"message": "hello, ktr"
}
@@ -385,7 +385,7 @@ $ evans --service Example --call Unary --file request.json
Use `stdin`.
``` sh
-$ echo '{ "name": "ktr" }' | evans --service Example --call Unary
+$ echo '{ "name": "ktr" }' | evans --service Example cli --call Unary
{
"message": "hello, ktr"
}
@@ -404,7 +404,7 @@ Then, the command will be more clear.
### Repeated fields
``` sh
-$ echo '{ "name": ["foo", "bar"] }' | evans -r --service Example --call UnaryRepeated
+$ echo '{ "name": ["foo", "bar"] }' | evans -r --service Example cli --call UnaryRepeated
{
"message": "hello, foo, bar"
}
@@ -412,7 +412,7 @@ $ echo '{ "name": ["foo", "bar"] }' | evans -r --service Example --call UnaryRep
### Enum fields
``` sh
-$ echo '{ "gender": 0 }' | evans -r --service Example --call UnaryEnum
+$ echo '{ "gender": 0 }' | evans -r --service Example cli --call UnaryEnum
{
"message": "M"
}
@@ -425,12 +425,12 @@ This constraint is come from Go's standard package [encoding/json](https://golan
$ echo 'Foo' | base64
Rm9vCg==
-$ echo '{"data": "Rm9vCg=="}' | evans -r --service Example --call UnaryBytes
+$ echo '{"data": "Rm9vCg=="}' | evans -r --service Example cli --call UnaryBytes
```
### Client streaming RPC
``` sh
-$ echo '{ "name": "ktr" } { "name": "ktr" }' | evans -r --service Example --call ClientStreaming
+$ echo '{ "name": "ktr" } { "name": "ktr" }' | evans -r --service Example cli --call ClientStreaming
{
"message": "ktr, you greet 2 times."
}
@@ -438,7 +438,7 @@ $ echo '{ "name": "ktr" } { "name": "ktr" }' | evans -r --service Example --call
### Server streaming RPC
``` sh
-$ echo '{ "name": "ktr" }' | evans -r --service Example --call ServerStreaming
+$ echo '{ "name": "ktr" }' | evans -r --service Example cli --call ServerStreaming
{
"message": "hello ktr, I greet 0 times."
}
@@ -454,7 +454,7 @@ $ echo '{ "name": "ktr" }' | evans -r --service Example --call ServerStreaming
### Bidirectional streaming RPC
``` sh
-$ echo '{ "name": "foo" } { "name": "bar" }' | evans -r --service Example --call BidiStreaming
+$ echo '{ "name": "foo" } { "name": "bar" }' | evans -r --service Example cli --call BidiStreaming
{
"message": "hello foo, I greet 0 times."
}