No Description

Esun Kim fb9d94b1b7 Revert "Added portability test with openssl 1.0.2 (#25770)" 4 years ago
.bazelci 6f424fa39a s/agains/against 6 years ago
.github 00ce40373b Change repo mgr to @nicolasnoble (#25648) 4 years ago
bazel 1040fbdb9f Re-introduce "CSDS Implementation" (#25762) 4 years ago
cmake d3e97d953b Adding xxhash as a subtree (#25645) 4 years ago
doc 801c2fd832 Update keepalive.md (#25730) 4 years ago
etc 8c885f754a Update root pem certs 4 years ago
examples ce16365421 clang-format C++ examples (#25764) 4 years ago
include b457f43227 Implement C++ Admin Interface API (#25753) 4 years ago
spm-core-include 6ba52fd83e Support swift package manager for grpc-core and grpc-cpp. 4 years ago
spm-cpp-include 6ba52fd83e Support swift package manager for grpc-core and grpc-cpp. 4 years ago
src 1694984846 Revert "Remove unused eventmanager_libuv code (#25796)" (#25807) 4 years ago
summerofcode 8548a932fb Update .cc and .md files 6 years ago
templates fb9d94b1b7 Revert "Added portability test with openssl 1.0.2 (#25770)" 4 years ago
test fb9d94b1b7 Revert "Added portability test with openssl 1.0.2 (#25770)" 4 years ago
third_party d3e97d953b Adding xxhash as a subtree (#25645) 4 years ago
tools fb9d94b1b7 Revert "Added portability test with openssl 1.0.2 (#25770)" 4 years ago
.bazelignore 565520443b [xDS Proto] Update Bazel dependencies (#25511) 4 years ago
.bazelrc 9e4b762203 Add suggested alias for bazelrc import location 7 years ago
.clang-format 377fe6095a Upgrade clang-tidy and clang-format to 11 (#25590) 4 years ago
.clang-tidy 2dc8df9ef6 Fix bugprone unhandled self assignment (#25667) 4 years ago
.editorconfig ae66d78b8e Adding an editorconfig configuration file. 10 years ago
.gitallowed 4c53c9d7c9 .gitallowed modification on the path of test files. 5 years ago
.gitignore 6ba52fd83e Support swift package manager for grpc-core and grpc-cpp. 4 years ago
.gitmodules 565520443b [xDS Proto] Update Bazel dependencies (#25511) 4 years ago
.istanbul.yml 2af89e49cb Moved gRPC node package root to repo root, made it depend on grpc.gyp 10 years ago
.pylintrc ff9a426b2a Python style: suppress pylint bad-continuation for yapf compatibility 4 years ago
.pylintrc-examples ff9a426b2a Python style: suppress pylint bad-continuation for yapf compatibility 4 years ago
.pylintrc-tests ff9a426b2a Python style: suppress pylint bad-continuation for yapf compatibility 4 years ago
.rspec d7e1a10628 Bundled C core with Ruby library 9 years ago
.travis.yml 1f670397ce Remove gflags. 4 years ago
.yapfignore e52081f903 More pythons to be formatted 5 years ago
.yardopts 33c728e1ed Adding a .yardopts file at the root so rubydocs isn't getting lost. 9 years ago
AUTHORS a44e6d76b7 [Aio] Unary unary client call barebones implementation 6 years ago
BUILD 1694984846 Revert "Remove unused eventmanager_libuv code (#25796)" (#25807) 4 years ago
BUILD.gn 1694984846 Revert "Remove unused eventmanager_libuv code (#25796)" (#25807) 4 years ago
BUILDING.md df73c74f99 cmake: Reflect minor version change in SONAME for C++ and C# (#25617) 4 years ago
CMakeLists.txt 1694984846 Revert "Remove unused eventmanager_libuv code (#25796)" (#25807) 4 years ago
CODE-OF-CONDUCT.md c055a79262 Fix code of conduct 8 years ago
CONCEPTS.md de4e53162e address comments 7 years ago
CONTRIBUTING.md c85a87981f Update note on closed feature requests with help wanted label 5 years ago
GOVERNANCE.md 525704dae2 Add GOVERNANCE.md 6 years ago
Gemfile d7e1a10628 Bundled C core with Ruby library 9 years ago
LICENSE fbb61ed25d fix license file 8 years ago
MAINTAINERS.md 58a79da2b9 add me(ZhenLian) as project maintainer 5 years ago
MANIFEST.md 539f5068bd Abstract libuv implementation 7 years ago
Makefile 1694984846 Revert "Remove unused eventmanager_libuv code (#25796)" (#25807) 4 years ago
NOTICE.txt 312ea4a187 change LICENSE, add AUTHORS 8 years ago
OWNERS 80c69d8277 Remove unnecessary owners in client_channel tree. 5 years ago
PYTHON-MANIFEST.in d3e97d953b Adding xxhash as a subtree (#25645) 4 years ago
Package.swift 7d4d516511 wip: change error_details functions to templates 4 years ago
README.md f27c884dea Add grpc-kotlin 5 years ago
Rakefile b94f09aaf4 Drop support for ruby 2.3 4 years ago
SECURITY.md 6e7ba55c98 Add security policy doc 4 years ago
TROUBLESHOOTING.md 6b298fbc38 Typo 5 years ago
WORKSPACE e816aa34af buildifier format 5 years ago
build_autogenerated.yaml 1694984846 Revert "Remove unused eventmanager_libuv code (#25796)" (#25807) 4 years ago
build_config.rb fe2e96f9f3 Regenerate projects 4 years ago
build_handwritten.yaml d3e97d953b Adding xxhash as a subtree (#25645) 4 years ago
composer.json c038f827b8 update required minimal php version to 7.0 4 years ago
config.m4 1694984846 Revert "Remove unused eventmanager_libuv code (#25796)" (#25807) 4 years ago
config.w32 1694984846 Revert "Remove unused eventmanager_libuv code (#25796)" (#25807) 4 years ago
gRPC-C++.podspec 1694984846 Revert "Remove unused eventmanager_libuv code (#25796)" (#25807) 4 years ago
gRPC-Core.podspec 1694984846 Revert "Remove unused eventmanager_libuv code (#25796)" (#25807) 4 years ago
gRPC-ProtoRPC.podspec 51659eb06e Regenerate projects 4 years ago
gRPC-RxLibrary.podspec 51659eb06e Regenerate projects 4 years ago
gRPC.podspec 51659eb06e Regenerate projects 4 years ago
grpc.bzl c34bef4ca4 Format all Bazel files with buildifier 5 years ago
grpc.def 1040fbdb9f Re-introduce "CSDS Implementation" (#25762) 4 years ago
grpc.gemspec 1694984846 Revert "Remove unused eventmanager_libuv code (#25796)" (#25807) 4 years ago
grpc.gyp 1694984846 Revert "Remove unused eventmanager_libuv code (#25796)" (#25807) 4 years ago
package.xml 1694984846 Revert "Remove unused eventmanager_libuv code (#25796)" (#25807) 4 years ago
requirements.bazel.txt ed8fd192d0 Pin all Bazel pypi dependencies 4 years ago
requirements.txt e242764d50 Remove enum34 from requirements.txt 5 years ago
setup.cfg 40a5a655af Polish and add AsyncIO examples 4 years ago
setup.py d3e97d953b Adding xxhash as a subtree (#25645) 4 years ago

README.md

gRPC - An RPC library and framework

gRPC is a modern, open source, high-performance remote procedure call (RPC) framework that can run anywhere. gRPC enables client and server applications to communicate transparently, and simplifies the building of connected systems.

Homepage: grpc.io
Mailing List: grpc-io@googlegroups.com

To start using gRPC

To maximize usability, gRPC supports the standard method for adding dependencies to a user's chosen language (if there is one). In most languages, the gRPC runtime comes as a package available in a user's language package manager.

For instructions on how to use the language-specific gRPC runtime for a project, please refer to these documents

  • C++: follow the instructions under the src/cpp directory
  • C#: NuGet package Grpc
  • Dart: pub package grpc
  • Go: go get google.golang.org/grpc
  • Java: Use JARs from Maven Central Repository
  • Kotlin: Use JARs from Maven Central Repository
  • Node: npm install grpc
  • Objective-C: Add gRPC-ProtoRPC dependency to podspec
  • PHP: pecl install grpc
  • Python: pip install grpcio
  • Ruby: gem install grpc
  • WebJS: follow the grpc-web instructions

Per-language quickstart guides and tutorials can be found in the documentation section on the grpc.io website. Code examples are available in the examples directory.

Precompiled bleeding-edge package builds of gRPC master branch's HEAD are uploaded daily to packages.grpc.io.

To start developing gRPC

Contributions are welcome!

Please read How to contribute which will guide you through the entire workflow of how to build the source code, how to run the tests, and how to contribute changes to the gRPC codebase. The "How to contribute" document also contains info on how the contribution process works and contains best practices for creating contributions.

Troubleshooting

Sometimes things go wrong. Please check out the Troubleshooting guide if you are experiencing issues with gRPC.

Performance

See the Performance dashboard for performance numbers of master branch daily builds.

Concepts

See gRPC Concepts

About This Repository

This repository contains source code for gRPC libraries implemented in multiple languages written on top of a shared C core library src/core.

Libraries in different languages may be in various states of development. We are seeking contributions for all of these libraries:

Language Source
Shared C [core library] src/core
C++ src/cpp
Ruby src/ruby
Python src/python
PHP src/php
C# (core library based) src/csharp
Objective-C src/objective-c
Language Source repo
Java grpc-java
Kotlin grpc-kotlin
Go grpc-go
NodeJS grpc-node
WebJS grpc-web
Dart grpc-dart
.NET (pure C# impl.) grpc-dotnet