All Projects → twirphp → Twirp

twirphp / Twirp

Licence: other
PHP port of Twitch's Twirp RPC framework

Projects that are alternatives of or similar to Twirp

elm-protobuf
protobuf plugin for elm
Stars: ✭ 93 (-13.89%)
Mutual labels:  protobuf, protocol-buffers, rpc
Go Micro Boilerplate
The boilerplate of the GoLang application with a clear microservices architecture.
Stars: ✭ 147 (+36.11%)
Mutual labels:  rpc, protobuf, protocol-buffers
protocell
Conjures up convenient OCaml types and serialization functions based on protobuf definition files
Stars: ✭ 18 (-83.33%)
Mutual labels:  protobuf, code-generator, protocol-buffers
Go Grpc Examples
This repo contains examples and implementations of different types of GRPC services and APIs using Golang.
Stars: ✭ 180 (+66.67%)
Mutual labels:  rpc, protobuf, protocol-buffers
Protobuf
Protocol Buffers - Google's data interchange format
Stars: ✭ 52,305 (+48330.56%)
Mutual labels:  rpc, protobuf, protocol-buffers
Protobuf
Python implementation of Protocol Buffers data types with dataclasses support
Stars: ✭ 101 (-6.48%)
Mutual labels:  protobuf, protocol-buffers
Rpc Thunderdome
A comparison between Proteus RPC and other commonly used RPC frameworks
Stars: ✭ 22 (-79.63%)
Mutual labels:  rpc, protobuf
Bgpmon
CSU's BGP Observatory code (bgpmon/pheme)
Stars: ✭ 25 (-76.85%)
Mutual labels:  rpc, protocol-buffers
Samay
Command line Time tracking and reporting. Built using Go(programming language) and protocol buffers.
Stars: ✭ 37 (-65.74%)
Mutual labels:  protobuf, protocol-buffers
Getty
a netty like asynchronous network I/O library based on tcp/udp/websocket; a bidirectional RPC framework based on JSON/Protobuf; a microservice framework based on zookeeper/etcd
Stars: ✭ 532 (+392.59%)
Mutual labels:  rpc, protobuf
Grpc
An Elixir implementation of gRPC
Stars: ✭ 858 (+694.44%)
Mutual labels:  rpc, protobuf
Protoc Jar
Protocol Buffers protobuf compiler - multi-platform executable protoc JAR and API
Stars: ✭ 103 (-4.63%)
Mutual labels:  protobuf, protocol-buffers
Go Proto Validators
Generate message validators from .proto annotations.
Stars: ✭ 713 (+560.19%)
Mutual labels:  protobuf, protocol-buffers
Protoreflect
Reflection (Rich Descriptors) for Go Protocol Buffers
Stars: ✭ 651 (+502.78%)
Mutual labels:  protobuf, protocol-buffers
Protobuf Swift
Google ProtocolBuffers for Apple Swift
Stars: ✭ 925 (+756.48%)
Mutual labels:  protobuf, protocol-buffers
Brpc Java
Java implementation for Baidu RPC, multi-protocol & high performance RPC.
Stars: ✭ 647 (+499.07%)
Mutual labels:  rpc, protobuf
Protobuf
Go support for Google's protocol buffers
Stars: ✭ 8,111 (+7410.19%)
Mutual labels:  protobuf, protocol-buffers
Protobuf Nim
Protobuf implementation in pure Nim that leverages the power of the macro system to not depend on any external tools
Stars: ✭ 90 (-16.67%)
Mutual labels:  protobuf, protocol-buffers
Easyrpc
EasyRpc is a simple, high-performance, easy-to-use RPC framework based on Netty, ZooKeeper and ProtoStuff.
Stars: ✭ 79 (-26.85%)
Mutual labels:  rpc, protobuf
Pufferdb
🐡 An Android & JVM key-value storage powered by Protobuf and Coroutines
Stars: ✭ 91 (-15.74%)
Mutual labels:  protobuf, protocol-buffers

Twirp PHP port

CircleCI Twirp Version Go Report Card GolangCI GoDoc Composer Package

Installation

Download the plugin from the Releases page.

Alternatively you can use the following oneliner to install the plugin:

curl -Ls https://git.io/twirphp | bash -b path/to/bin

See the documentation for details.

Documentation

See the official documentation.

Example

To use the example and run certain test suites you need to build a Docker image from this directory:

$ docker build -t twirphp .

Tests

The following set of commands runs the complete test suite for the project:

docker run --rm -it -v $PWD:/app composer install # Optionall add "-v $COMPOSER_HOME:/tmp" to the docker command

go test -v ./protoc-gen-twirp_php/...
# OR
docker run --rm -it -v $PWD:/workspace -v $GOPATH:/go twirphp go test -v ./protoc-gen-twirp_php/...

docker run --rm -it -v $PWD:/workspace twirphp vendor/bin/phpunit -v
docker run --rm -it -v $PWD:/workspace twirphp vendor/bin/phpunit -v --group example

./gencompat.sh
# OR
docker run --rm -it -v $PWD:/workspace -v $GOPATH:/go twirphp ./gencompat.sh

docker run --rm -it -v $PWD:/workspace twirphp clientcompat -client clientcompat/compat.sh

Security

If you discover any security related issues, please contact us at [email protected].

License

The MIT License (MIT). Please see License File for more information.

The original Twirp library is licensed under the Apache 2.0 License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].