Prototool lets you handle the installation of protoc and the import of all of the well-known types behind the scenes in a platform-independent manner. Standardize building of your Protobuf files with a common configuration. Lint your Protobuf files with common linting rules according to Google' Style Guide, Uber's V1 Style Guide, Uber's V2 style guide, or your own set of configured lint rules. Format your Protobuf files in a consistent manner. Create Protobuf files from a template that passes lint, taking care of package naming for you. Generate stubs using any plugin based on a simple configuration file, including handling imports of all the well-known types. Call gRPC endpoints with ease, taking care of the JSON to binary conversion for you. Check for breaking changes on a per-package basis, verifying that your API never breaks.

Features

  • Prototool can be installed on Mac OS X or Linux through a variety of methods
  • Prototool operates using a config file named either prototool.yaml or prototool.json
  • Prototool exposes a breaking change detector through the prototool break check command
  • Call a gRPC endpoint using a JSON input
  • Prototool is meant to help enforce a consistent development style for Protobuf
  • Prototool is generally available, and conforms to SemVer

Project Samples

Project Activity

See All Activity >

Categories

Data Formats, Linters

License

MIT License

Follow Prototool

Prototool Web Site

You Might Also Like
Component Content Management System for Software Documentation Icon
Component Content Management System for Software Documentation

Great tool for serious technical writers

Paligo is an end-to-end Component Content Management System (CCMS) solution for technical documentation, policies and procedures, knowledge management, and more.
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of Prototool!

Additional Project Details

Operating Systems

Linux, Mac

Programming Language

Go

Related Categories

Go Data Formats Software, Go Linters

Registered

2021-11-03