speakeasy-schemas
Local Setup
- Follow the quickstart guide to install
protocand the golang plugins: https://grpc.io/docs/languages/go/quickstart/- Just be aware newer versions broke JS/TS support so you need to for now make sure you are on version
3.20.1 - Install via
brew install protobuf@3 && brew link protobuf@3(or another method if you prefer)
- Just be aware newer versions broke JS/TS support so you need to for now make sure you are on version
- Make sure you are using JDK 8
- Install gradle so its usable from the command line: https://gradle.org/install/
- Run
npm installinspeakeasy-schemas/grpc/tsto install the typescript compiler (if you're using an M1, add the--target_arch=x64flag to the install command) - Setup
protolintin your IDE. (vscode: https://marketplace.visualstudio.com/items?itemName=Plex.vscode-protolint)
Linting
- Run
make lintfrom the root of the project.
Generate schemas
Golang
- Run
make generatefrom the root of the project.
This will generate to golang files in /grpc/go. Then this repo just needs to be pushed to github and the golang files can be included in other projects.
Java
- Run
make generatefrom the root of the project.
This will generate the java library in /grpc/java/lib/build/libs/lib.jar which can be copied to the lib/ directory of another project.
Rust
- Run
make generatefrom the root of the project.
This will generate the rust library in /grpc/rust/lib/src which can be copied to the src/ directory of another project.