Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/grpc/grpc-swift
The Swift language implementation of gRPC.
https://github.com/grpc/grpc-swift
grpc protocol-buffers swift swift-grpc
Last synced: about 21 hours ago
JSON representation
The Swift language implementation of gRPC.
- Host: GitHub
- URL: https://github.com/grpc/grpc-swift
- Owner: grpc
- License: apache-2.0
- Created: 2016-09-21T17:35:31.000Z (over 8 years ago)
- Default Branch: main
- Last Pushed: 2025-01-17T17:28:24.000Z (5 days ago)
- Last Synced: 2025-01-17T17:32:25.332Z (5 days ago)
- Topics: grpc, protocol-buffers, swift, swift-grpc
- Language: Swift
- Homepage:
- Size: 17.3 MB
- Stars: 2,074
- Watchers: 76
- Forks: 420
- Open Issues: 101
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE-OF-CONDUCT.md
- Security: SECURITY.md
- Governance: GOVERNANCE.md
Awesome Lists containing this project
- awesome-grpc - gRPC Swift - The Swift language implementation of gRPC (Official Libraries and Tools)
README
# gRPC Swift
This repository contains a gRPC implementation for Swift. You can read more
about gRPC on the [gRPC project's website][grpcio].> gRPC Swift v2.x is under active development on the `main` branch and takes
> full advantage of Swift's native concurrency features.
>
> v1.x is still supported and maintained on the `release/1.x` branch.- 📚 **Documentation** and **tutorials** are available on the [Swift Package Index][spi-grpc-swift]
- 💻 **Examples** are available in the [Examples](Examples) directory
- 🚀 **Contributions** are welcome, please see [CONTRIBUTING.md](CONTRIBUTING.md)
- 🪪 **License** is Apache 2.0, repeated in [LICENSE](License)
- 🔒 **Security** issues should be reported via the process in [SECURITY.md](SECURITY.md)
- 🔀 **Related Repositories**:
- [`grpc-swift-nio-transport`][grpc-swift-nio-transport] contains high-performance HTTP/2 client and server transport implementations for gRPC Swift built on top of SwiftNIO.
- [`grpc-swift-protobuf`][grpc-swift-protobuf] contains integrations with SwiftProtobuf for gRPC Swift.
- [`grpc-swift-extras`][grpc-swift-extras] contains optional extras for gRPC Swift.## Quick Start
The following snippet contains a Swift Package manifest to use gRPC Swift v2.x with
the SwiftNIO based transport and SwiftProtobuf serialization:```swift
// swift-tools-version: 6.0
import PackageDescriptionlet package = Package(
name: "foo-package",
platforms: [.macOS("15.0")],
dependencies: [
.package(url: "https://github.com/grpc/grpc-swift.git", from: "2.0.0-beta.3"),
.package(url: "https://github.com/grpc/grpc-swift-nio-transport.git", from: "1.0.0-beta.3"),
.package(url: "https://github.com/grpc/grpc-swift-protobuf.git", from: "1.0.0-beta.3"),
],
targets: [
.executableTarget(
name: "bar-target",
dependencies: [
.product(name: "GRPCCore", package: "grpc-swift"),
.product(name: "GRPCNIOTransportHTTP2", package: "grpc-swift-nio-transport"),
.product(name: "GRPCProtobuf", package: "grpc-swift-protobuf"),
]
)
]
)
```[gh-grpc]: https://github.com/grpc/grpc
[grpcio]: https://grpc.io
[spi-grpc-swift]: https://swiftpackageindex.com/grpc/grpc-swift/documentation
[grpc-swift-nio-transport]: https://github.com/grpc/grpc-swift-nio-transport
[grpc-swift-protobuf]: https://github.com/grpc/grpc-swift-protobuf
[grpc-swift-extras]: https://github.com/grpc/grpc-swift-extras