Skip to content
/ clay Public
forked from utrack/clay

Minimal server platform for gRPС+REST+Swagger APIs

License

Notifications You must be signed in to change notification settings

mwf/clay

 
 

Repository files navigation

clay

Build Status

Minimal server platform for gRPC and REST+Swagger APIs

Using clay you can automatically spin up HTTP handlers for your gRPC server with complete Swagger defs with a few lines of code.

Project is vgo-friendly, you can adopt it using new versioning system.

Why?

There's an excellent grpc-gateway proxy generator, but it requires you to spin up (at least) one proxy instance in addition to your services. clay allows you to serve HTTP traffic by server instances themselves for easier debugging/testing.

Requirements

Since new Semantic Import Versioning is used, you are required to use Go1.9.7+ or Go1.10.3+

How?

Check out an example server for a quick start, or dive into step-by-step docs for a full guide.

Flexibility

clay.Server is easily extendable, as you can pass any options gRPC server can use, but if it's not extendable enough then you can use the .GetDescription() method of your implementation to register the service in your own custom server (see ServiceDesc). clay/server vs own server for more info regarding BYOS.

About

Minimal server platform for gRPС+REST+Swagger APIs

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 81.8%
  • Makefile 18.0%
  • Shell 0.2%