No Description

George Barnett e390c85ad8 Update generated code (#2141) 1 year ago
.github 07e38e9756 Migrate CI to use swiftlang / SwiftNIO common GitHub Actions. (#2105) 1 year ago
Examples e390c85ad8 Update generated code (#2141) 1 year ago
IntegrationTests 07e38e9756 Migrate CI to use swiftlang / SwiftNIO common GitHub Actions. (#2105) 1 year ago
Sources b281cf1aa4 Update examples and tutorials (#2139) 1 year ago
Tests 0fc49565a3 Add remote peer info to the server context (#2136) 1 year ago
dev 07e38e9756 Migrate CI to use swiftlang / SwiftNIO common GitHub Actions. (#2105) 1 year ago
.editorconfig 0e4aac54e8 Add editorconfig (#1920) 1 year ago
.gitignore 99e9956158 Add support for ordo-one/package-benchmark (#1678) 2 years ago
.gitmodules 63c6acfa40 Move CgRPC, gRPC, and QuickProto to "Sources" directory and add new top-level Package.swift. 9 years ago
.license_header_template 07e38e9756 Migrate CI to use swiftlang / SwiftNIO common GitHub Actions. (#2105) 1 year ago
.licenseignore 07e38e9756 Migrate CI to use swiftlang / SwiftNIO common GitHub Actions. (#2105) 1 year ago
.spi.yml cfa6743020 Update tutorials and docs (#2070) 1 year ago
.swift-format 9cdcd2d9de Switch to swift-format 2 years ago
.swiftformatignore 07e38e9756 Migrate CI to use swiftlang / SwiftNIO common GitHub Actions. (#2105) 1 year ago
.unacceptablelanguageignore 07e38e9756 Migrate CI to use swiftlang / SwiftNIO common GitHub Actions. (#2105) 1 year ago
CODE-OF-CONDUCT.md 09b30466f6 Update links (#1926) 1 year ago
CONTRIBUTING.md 07e38e9756 Migrate CI to use swiftlang / SwiftNIO common GitHub Actions. (#2105) 1 year ago
GOVERNANCE.md 09b30466f6 Update links (#1926) 1 year ago
LICENSE 6dde0518ca Revert to Apache 2.0 license verbatim [skip ci] (#504) 6 years ago
MAINTAINERS.md 09b30466f6 Update links (#1926) 1 year ago
NOTICES.txt 61cc2d1f42 Avoid using vendored lock in BroadcastAsyncSequence (#2108) 1 year ago
Package.swift f97f76c048 Add more build settings to test targets (#2106) 1 year ago
README.md 55e39fa96b Remove '@_exported import GRPCCore' (#2109) 1 year ago
SECURITY.md 7fbc418471 Add a security policy. (#1193) 4 years ago

README.md

gRPC Swift

This repository contains a gRPC implementation for Swift. You can read more about gRPC on the gRPC project's website.

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
  • 💻 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: "foo-package",
    platforms: [.macOS("15.0")],
    dependencies: [
        .package(url: "https://github.com/grpc/grpc-swift.git", from: "2.0.0-alpha.1"),
        .package(url: "https://github.com/grpc/grpc-swift-nio-transport.git", from: "1.0.0-alpha.1"),
        .package(url: "https://github.com/grpc/grpc-swift-protobuf.git", from: "1.0.0-alpha.1"),
    ],
    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"),
            ]
        )
    ]
)