You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+11-10Lines changed: 11 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -59,16 +59,13 @@ General instruction:
59
59
- Check to have set other values from [enverant.json](.vscode/enverant.json)
60
60
- full list of variable possible to set available in help command `go run . help`
61
61
- install [Taskfile](https://taskfile.dev/usage/) and check [commands to run](Taskfile.yml)
62
-
- run some command, for example `task web`
62
+
- run `task swag: build`
63
+
- run `templ generate`
64
+
- run some command, for example `task web` or u could run `go run . web` directly at this point
63
65
- if u wish access to `task dev:watch` that reloads running web server on file changes, then install `pip install watchdog[watchmedo]` and ensure `watchmedo` binary is available to `task dev:watch` command written [in Taskfile](Taskfile.yml)
64
66
65
67
If u have problems with configuring development environment, then seek my contacts below to help you through it ^_^
66
68
67
-
# Development, how to regenerate proto related code
68
-
69
-
- task grpc:docker:gateway // for docker way to run file updates for grpc and its gateway // assumes docker is available of unix socket
70
-
- task grpc:protoc:gateway // to run grpc file updates locally without docker. // assumes u did same stuff as `protoc` stage in Dockerfile
71
-
72
69
# Features
73
70
74
71
- Long term maintance support for dozen of years. Minimum dependencies software with Golang and Htmx.
@@ -93,18 +90,22 @@ If u have problems with configuring development environment, then seek my contac
93
90
- deployed Discovery can be found at https://darkstat.dd84ai.com/swagger/index.html
94
91
- deployed Vanilla can be found at https://darkstat-vanilla.dd84ai.com/swagger/index.html
95
92
96
-
# Alternatively we offer Client generation through gRPC!
93
+
# gRPC existed but was removed
94
+
95
+
In the past we offered **grpc client** too, but it **was decommissioned** due being not very used and creating maintanance overhead
96
+
-https://github.com/darklab8/fl-darkstat/pull/158
97
+
- if there will be ever demand for gRPC, we could make it back
97
98
98
-
- With gRPC you can export our proto file and generate client with precise data structs and methods of API for your any language! Be it C#, Javascript, Python or even C++
99
+
- With gRPC you could export our proto file and generate client with precise data structs and methods of API for your any language! Be it C#, Javascript, Python or even C++
99
100
- Full list of supported languages here https://grpc.io/docs/languages/
100
101
- You get static typing validations
101
102
- You get performance boosts from using grpc compression stuff
102
103
- We change server side smth? Just regenerate the lib to keep up with updates ^_^
103
-
- Import [darkstat proto file](./darkapis/darkgrpc/statproto/darkstat.proto) for its usage and generate client lib from it with `protoc` command
104
+
- Import [darkstat proto file](https://github.com/darklab8/fl-darkstat/blob/8a4903a459e2024bdacf8a3444603fc67403037a/darkapis/darkgrpc/statproto/darkstat.proto) for its usage and generate client lib from it with `protoc` command
104
105
- addresses to connect:
105
106
- for local instance localhost:50051, or optionally unix socket `/tmp/darkstat/grpc.sock` at linux for extra performance boosts.
106
107
- for deployed instances for discovery and vanilla, they are hosted over darkgrpc.dd84ai.com and darkgrpc-vanilla.dd84ai.com accordingly. 80 and 443 ports accordingly
107
-
-[see example in golang](./darkapis/darkgrpc/server_test.go) of interacting with grpc if desired
108
+
-[see example in golang](https://github.com/darklab8/fl-darkstat/blob/8a4903a459e2024bdacf8a3444603fc67403037a/darkapis/darkgrpc/server_test.go) of interacting with grpc if desired
108
109
- up to date exposed grpc domains can be found [in this file](./tf/production/main.tf) as rpc_prefix + zone combination
109
110
- Make sure to set in your client option to increase accepting data size `grpc.WithDefaultCallOptions(grpc.MaxCallRecvMsgSize(32 * 10e6))`.
110
111
- NOTE: By default Grpc goes through grpc endpoint and uses compression of Protocol Buffers. Ability to go Json in API Gateway (for which Swagger documentation is provided) is ONLY FALLBACK for situations when people unable to go gRPC native way. If you will go through gRPC getting started instruction, u will receive automatically for your language client generated to utilize Protocol Buffers
0 commit comments