Languages
The Nitric SDKs communicate with the Nitric Server using gRPC. Since the Nitric Server provides an API using gRPC and Protocol Buffers it ensures the Nitric framework can support many languages without rewriting the framework from scratch.
The Nitric team provides idiomatic language SDKs, designed to feel familiar to developers of each language and make the best use of unique language features.
Supported Languages
The following runtimes are currently supported or are in development:
Language SDK | Support | GitHub Repo |
---|---|---|
Node.js | Full Support | https://github.com/nitrictech/node-sdk |
Python | Full Support | https://github.com/nitrictech/python-sdk |
Go | Full Support | https://github.com/nitrictech/go-sdk |
Dart | Experimental | https://github.com/nitrictech/dart-sdk |
C# | v0 Support | https://github.com/nitrictech/dotnet-sdk |
JVM | v0 Support | https://github.com/nitrictech/jvm-sdk |
If a language you want isn't listed, come chat with us on Discord.
Alternatively, feel free to develop your own SDKs. Nitric is open source so you can use any of the other SDKs linked above as a reference.
Adding language support
To start adding support for a language, check out the protobuf contracts, and look at how to compile the base SDKs for your specific language on the protobuf docs. Compiling the protobuf definition to a base SDK will provide gRPC stubs for connecting with the Nitric Server, as well as language-specific types for constructing request and response objects.