P.rivacy
L.ogistics
A.ccessibility
P L A N.etworks
PLAN is a software platform for communications, group collaboration, and spatial planning. PLAN leverages modern feats of engineering in distributed crypto systems, 3D graphics, and "trustless" protocols.
PLAN leverages Protocol Buffers and gRPC. This repo houses PLAN's foundational data structures, allowing any consuming projects to be interoperable. This repo also offers the utility script build-proto.sh which invokes the protobuf compiler protoc on a .proto file for a given target language. Consuming projects invoke this script to more easily compile this projects proto files.
-
Set up Gprc.Tools (and C# plugin): a. Download the latest Grpc.Tools nuget package
b. Unzip the
grpc.toolsnupkg file using unzip. Do not use macOS's default unarchiver since it does not restore.nupkgfilenames properly. Instead:`unzip grpc.tools.X.XX.0.nupkg -d plan-systems/plan-protobufs/Grpc.Tools`c. Add execute permissions to for your platform:
cd plan-systems/plan-protobufs/Grpc.Tools chmod +x tools/macosx_x64/* chmod +x tools/linux_x64/* chmod +x tools/windows_x64/*
-
Ensure your
$PATHcontains Go'sbindirectory, e.g.PATH="${GOPATH}/bin:${PATH}" -
Install gogo protobufs and gRPC:
go get -u github.com/gogo/protobuf/protoc-gen-gofast go get -u google.golang.org/grpc -
Invoke
build-proto.shfrom consuming projects. -
Pick up your new lambo.
Getting started with gRPC: