Skip to content

grpc/grpc-swift

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

gRPC Swift

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:

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-tools-version: 6.0
import PackageDescription

let package = Package(
    name: "Application",
    platforms: [.macOS("15.0")],
    dependencies: [
        .package(url: "https://github.com/grpc/grpc-swift.git", from: "2.0.0"),
        .package(url: "https://github.com/grpc/grpc-swift-nio-transport.git", from: "1.0.0"),
        .package(url: "https://github.com/grpc/grpc-swift-protobuf.git", from: "1.0.0"),
    ],
    targets: [
        .executableTarget(
            name: "Server",
            dependencies: [
                .product(name: "GRPCCore", package: "grpc-swift"),
                .product(name: "GRPCNIOTransportHTTP2", package: "grpc-swift-nio-transport"),
                .product(name: "GRPCProtobuf", package: "grpc-swift-protobuf"),
            ]
        )
    ]
)