Categorygithub.com/TechMDW/ProtoPort
repository
0.0.8
Repository: https://github.com/techmdw/protoport.git
Documentation: pkg.go.dev

# Packages

No description provided by the author

# README

ProtoPort

Description: This CLI tool will allow you to build all of your proto files with one command

Dependencies

Protoc

Download Pre Built

All the Pre Built binary are available in the release page

Installation with golang

go install github.com/TechMDW/ProtoPort/cmd/proto-port@latest

Protoc plugins installation

For more information visit grpc.io

Langplugin
Dartdart pub global activate protoc_plugin
Gogo install google.golang.org/grpc/cmd/[email protected]
Gogo install google.golang.org/protobuf/cmd/[email protected]

Usage

ProtoPort [command] [options]

Commands

SyntaxDescription
basicgenerate proto files from a local folder
githubgenerate proto files from a GitHub repo

Basic options

SyntaxDescription
-inputsPath to proto files (if path not specified, it will scan current folder for proto files and generate them with the same folder structure)
-outputsPath to output files (if not specified, it will store the file in the current folder and it will preserve the input folder structure)
-langChoose language to generate *[required](go, cpp, csharp, java, kotlin, objc, php, python, pyi, ruby, dart, node)

GitHub options

SyntaxDescription
-inputsThe url to the GitHub repo (if path not specified, it will scan the whole repo for proto files and generate them with the same folder structure)
-outputsPath to output files (if not specified, it will store the file in the current folder and it will preserve the input folder structure)
-patGitHub Personal Access Token (only needed if repo is private)
-langChoose language to generate *[required](go, cpp, csharp, java, kotlin, objc, php, python, pyi, ruby, dart, node)

TODO

Will work on this list when I got some free time. If you want to contribute, feel free to do so.

  • Compiling proto files.
  • Persistent folder structure pawn build.
  • Using GitHub as source for protofiles.
  • Using Gitlab as source for protofiles.
  • Using Bitbucket as source for protofiles.
  • Arguments passthrough to protoc.
  • Arguments pass through to protoc plugins.
  • Auto installing plugins and protoc by default.
  • Add binary for windows.
  • Add binary for linux.
  • Add binary for mac.

Getting help

If you have questions, concerns, bug reports, etc, please file an issue in this repository's Issue Tracker.

Guidance on how to contribute

All contributions to this project will be released under the TechMDW AB dedication. By submitting a pull request, or filing a bug, issue, or feature-request you are agreeing to comply with this waiver of copyright interest. Details can be found in our LICENSE.

There are two primary ways to help:

  • Using the issue tracker, and
  • Changing the code-base.

Using the issue tracker

Use the issue tracker to suggest feature requests, report bugs, and ask questions. This is also a great way to connect with the developers of the project as well as others who are interested in this solution.

Use the issue tracker to find ways to contribute. Find a bug or a feature, mention in the issue that you will take on that effort, then follow the Changing the code-base guidance below.

Changing the code-base

Generally speaking, you should fork this repository, make changes in your own fork, and then submit a pull-request. All new code should have associated unit tests that validate implemented features and the presence or lack of defects. Additionally, the code should follow any stylistic and architectural guidelines prescribed by the project. In the absence of such guidelines, mimic the styles and patterns in the existing code-base.