• Home
Name Date Size #Lines LOC

..--

.bazelci/06-Sep-2024-2411

.github/06-Sep-2024-883580

bazel/06-Sep-2024-3,7303,250

cmake/06-Sep-2024-835756

doc/06-Sep-2024-7,5055,613

etc/06-Sep-2024-4,3434,211

examples/06-Sep-2024-39,27928,930

fuzztest/06-Sep-2024-358251

include/06-Sep-2024-32,57115,460

spm-core-include/grpc/06-Sep-2024-

spm-cpp-include/grpcpp/06-Sep-2024-

src/06-Sep-2024-680,210525,454

summerofcode/06-Sep-2024-295224

templates/06-Sep-2024-13,39610,874

test/06-Sep-2024-1,096,9861,030,052

third_party/06-Sep-2024-84,34764,715

tools/06-Sep-2024-147,306114,007

.bazelignoreD06-Sep-2024667 3229

.bazelrcD06-Sep-2024142 43

.bazelversionD06-Sep-20246 21

.clang-formatD06-Sep-20241.5 KiB5150

.clang-tidyD06-Sep-20245.4 KiB162161

.dockerignoreD06-Sep-202449 76

.editorconfigD06-Sep-2024113 87

.git-blame-ignore-revsD06-Sep-2024114 43

.gitallowedD06-Sep-202465 32

.gitattributesD06-Sep-20241.9 KiB3837

.gitignoreD06-Sep-20242.3 KiB187149

.istanbul.ymlD06-Sep-2024135 76

.pylintrcD06-Sep-20244 KiB10494

.pylintrc-examplesD06-Sep-20244.1 KiB10999

.pylintrc-testsD06-Sep-20244.8 KiB133121

.rspecD06-Sep-202495 76

.yapfignoreD06-Sep-2024416 3630

.yardoptsD06-Sep-202416 11

AUTHORSD06-Sep-202464 54

Android.bpD06-Sep-202441.1 KiB996969

BUILDD06-Sep-2024145.3 KiB5,0624,830

BUILDING.mdD06-Sep-202411.1 KiB282211

BoringSSL-Package.swiftD06-Sep-202410.9 KiB320310

CMakeLists.txtD06-Sep-20241.2 MiB36,67734,157

CODE-OF-CONDUCT.mdD06-Sep-2024138 42

CONCEPTS.mdD06-Sep-20243.8 KiB6546

CONTRIBUTING.mdD06-Sep-20247.2 KiB135103

CONTRIBUTING_STEPS.mdD06-Sep-20245.2 KiB13887

GOVERNANCE.mdD06-Sep-2024141 21

GemfileD06-Sep-202489 53

LICENSED06-Sep-202429 KiB611487

MAINTAINERS.mdD06-Sep-20245 KiB9591

MANIFEST.mdD06-Sep-2024430 2418

METADATAD06-Sep-2024615 2321

MakefileD06-Sep-2024110.6 KiB2,2902,050

NOTICE.txtD06-Sep-2024554 1410

OWNERSD06-Sep-202473 54

PYTHON-MANIFEST.inD06-Sep-2024942 2928

Package.swiftD06-Sep-2024138.4 KiB2,2912,283

README.mdD06-Sep-20244.4 KiB10581

RakefileD06-Sep-20249.7 KiB248218

SECURITY.mdD06-Sep-2024202 42

TROUBLESHOOTING.mdD06-Sep-20242 KiB4431

WORKSPACED06-Sep-20244.7 KiB157118

_metadata.pyD06-Sep-2024680 181

black.tomlD06-Sep-20241.4 KiB5654

build_autogenerated.yamlD06-Sep-2024821.7 KiB21,62121,620

build_config.rbD06-Sep-2024654 183

build_handwritten.yamlD06-Sep-20247 KiB217216

composer.jsonD06-Sep-2024541 2423

config.m4D06-Sep-2024104.4 KiB1,6951,686

config.w32D06-Sep-2024134.7 KiB1,8571,852

gRPC-C++.podspecD06-Sep-2024214.7 KiB2,8132,786

gRPC-Core.podspecD06-Sep-2024274.4 KiB3,5793,555

gRPC-ProtoRPC.podspecD06-Sep-20243.1 KiB9075

gRPC-RxLibrary.podspecD06-Sep-20242.2 KiB7259

gRPC.podspecD06-Sep-20248.5 KiB196167

grpc.bzlD06-Sep-20244.1 KiB128109

grpc.defD06-Sep-20249.2 KiB290289

grpc.gemspecD06-Sep-2024233.4 KiB3,2723,264

package.xmlD06-Sep-2024330.4 KiB3,5193,518

requirements.bazel.txtD06-Sep-2024780 3837

requirements.txtD06-Sep-202498 65

setup.cfgD06-Sep-20241.1 KiB4234

setup.pyD06-Sep-202421 KiB605426

update_android_bp.shD06-Sep-20242.7 KiB7550

README.md

1# gRPC – An RPC library and framework
2
3gRPC is a modern, open source, high-performance remote procedure call (RPC)
4framework that can run anywhere. gRPC enables client and server applications to
5communicate transparently, and simplifies the building of connected systems.
6
7<table>
8  <tr>
9    <td><b>Homepage:</b></td>
10    <td><a href="https://grpc.io/">grpc.io</a></td>
11  </tr>
12  <tr>
13    <td><b>Mailing List:</b></td>
14    <td><a href="https://groups.google.com/forum/#!forum/grpc-io">grpc-io@googlegroups.com</a></td>
15  </tr>
16</table>
17
18[![Join the chat at https://gitter.im/grpc/grpc](https://badges.gitter.im/grpc/grpc.svg)](https://gitter.im/grpc/grpc?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
19
20## To start using gRPC
21
22To maximize usability, gRPC supports the standard method for adding dependencies
23to a user's chosen language (if there is one). In most languages, the gRPC
24runtime comes as a package available in a user's language package manager.
25
26For instructions on how to use the language-specific gRPC runtime for a project,
27please refer to these documents
28
29-   [C++](src/cpp): follow the instructions under the `src/cpp` directory
30-   [C#/.NET](https://github.com/grpc/grpc-dotnet): NuGet packages
31    `Grpc.Net.Client`, `Grpc.AspNetCore.Server`
32-   [Dart](https://github.com/grpc/grpc-dart): pub package `grpc`
33-   [Go](https://github.com/grpc/grpc-go): `go get google.golang.org/grpc`
34-   [Java](https://github.com/grpc/grpc-java): Use JARs from Maven Central
35    Repository
36-   [Kotlin](https://github.com/grpc/grpc-kotlin): Use JARs from Maven Central
37    Repository
38-   [Node](https://github.com/grpc/grpc-node): `npm install @grpc/grpc-js`
39-   [Objective-C](src/objective-c): Add `gRPC-ProtoRPC` dependency to podspec
40-   [PHP](src/php): `pecl install grpc`
41-   [Python](src/python/grpcio): `pip install grpcio`
42-   [Ruby](src/ruby): `gem install grpc`
43-   [WebJS](https://github.com/grpc/grpc-web): follow the grpc-web instructions
44
45Per-language quickstart guides and tutorials can be found in the
46[documentation section on the grpc.io website](https://grpc.io/docs/). Code
47examples are available in the [examples](examples) directory.
48
49Precompiled bleeding-edge package builds of gRPC `master` branch's `HEAD` are
50uploaded daily to [packages.grpc.io](https://packages.grpc.io).
51
52## To start developing gRPC
53
54Contributions are welcome!
55
56Please read [How to contribute](CONTRIBUTING.md) which will guide you through
57the entire workflow of how to build the source code, how to run the tests, and
58how to contribute changes to the gRPC codebase. The "How to contribute" document
59also contains info on how the contribution process works and contains best
60practices for creating contributions.
61
62## Troubleshooting
63
64Sometimes things go wrong. Please check out the
65[Troubleshooting guide](TROUBLESHOOTING.md) if you are experiencing issues with
66gRPC.
67
68## Performance
69
70See the [Performance dashboard](https://grafana-dot-grpc-testing.appspot.com/)
71for performance numbers of master branch daily builds.
72
73## Concepts
74
75See [gRPC Concepts](CONCEPTS.md)
76
77## About This Repository
78
79This repository contains source code for gRPC libraries implemented in multiple
80languages written on top of a shared C++ core library [src/core](src/core).
81
82Libraries in different languages may be in various states of development. We are
83seeking contributions for all of these libraries:
84
85Language                  | Source
86------------------------- | ----------------------------------
87Shared C++ [core library] | [src/core](src/core)
88C++                       | [src/cpp](src/cpp)
89Ruby                      | [src/ruby](src/ruby)
90Python                    | [src/python](src/python)
91PHP                       | [src/php](src/php)
92C# (core library based)   | [src/csharp](src/csharp)
93Objective-C               | [src/objective-c](src/objective-c)
94
95Language             | Source repo
96-------------------- | --------------------------------------------------
97Java                 | [grpc-java](https://github.com/grpc/grpc-java)
98Kotlin               | [grpc-kotlin](https://github.com/grpc/grpc-kotlin)
99Go                   | [grpc-go](https://github.com/grpc/grpc-go)
100NodeJS               | [grpc-node](https://github.com/grpc/grpc-node)
101WebJS                | [grpc-web](https://github.com/grpc/grpc-web)
102Dart                 | [grpc-dart](https://github.com/grpc/grpc-dart)
103.NET (pure C# impl.) | [grpc-dotnet](https://github.com/grpc/grpc-dotnet)
104Swift                | [grpc-swift](https://github.com/grpc/grpc-swift)
105