This repository contains a gRPC implementation for Swift. You can read more about gRPC on the gRPC project's website.
- 📚 Documentation and tutorials are available on the Swift Package Index
- 💻 Examples are available in the Examples directory
- 🚀 Contributions are welcome, please see CONTRIBUTING.md
- 🪪 License is Apache 2.0, repeated in LICENSE
- 🔒 Security issues should be reported via the process in SECURITY.md
- 🔀 Related Repositories:
grpc-swift-nio-transportcontains high-performance HTTP/2 client and server transport implementations for gRPC Swift built on top of SwiftNIO.grpc-swift-protobufcontains integrations with SwiftProtobuf for gRPC Swift.grpc-swift-extrascontains optional extras for gRPC Swift.
The following snippet contains a Swift Package manifest to use gRPC Swift v2.x with the SwiftNIO based transport and SwiftProtobuf serialization:
// swift-tools-version: 6.0 import PackageDescription letpackage=Package( name:"Application", platforms:[.macOS("15.0")], dependencies:[.package(url:"https://github.com/grpc/grpc-swift-2.git", from:"2.0.0"),.package(url:"https://github.com/grpc/grpc-swift-nio-transport.git", from:"2.0.0"),.package(url:"https://github.com/grpc/grpc-swift-protobuf.git", from:"2.0.0"),], targets:[.executableTarget( name:"Server", dependencies:[.product(name:"GRPCCore",package:"grpc-swift-2"),.product(name:"GRPCNIOTransportHTTP2",package:"grpc-swift-nio-transport"),.product(name:"GRPCProtobuf",package:"grpc-swift-protobuf"),])])