grpc-gen

1.3.0 • Public • Published

gRPC gen

Simple command line for running the protoc compiler via a configuration file

Configuration

Example .grpc-gen.yml config file

# Root of all your sources
srcs_dir: ./src
# Array of sources relative to srcs_dir
srcs:
  - file.proto
# Output object where the key is the plugin name and the value is
# the directory for the plugins output.
output:
  plugin-name: output-directory

Output

The output configuration can either be an array or an object. Each element must be an object with exactly one key. The one key must be the plugin/language name. The value has a long syntax and a short syntax.

Long Syntax

output:
  # Name of plugin or language
  - js:
      # Output directory
      dir: dist/node
      # Options to pass to plugin
      options:
        import_style: commonjs
 
  # Specify a custom plugin
  - custom-plugin:
      custom: true
      # Name of plugin to look for on your PATH or npm bin directories
      plugin: grpc_tools_node_protoc_plugin
      # Custom plugin output directory
      dir: dist/node
      # Options to pass to custom plugin
      options:

Short Syntax

output:
  # Name of plugin or language as key. Output direcotry as value.
  - php: dist/php

Install

Install globally

npm i -g grpc-gen

OR install locally in your project as a dev dependency and add a build script to your package.json.

npm i -D grpc-gen
// package.json
"scripts": {
  "build": "grpc-gen"
},
"devDependencies": [
  "grpc-gen": "^1.0.2"
]
npm run build

Usage

Running grpc-gen in the directory containing your configuration file will build your proto files.

grpc-gen

You can also specify a different configuration file with --config

# Extension can be: .yml .yaml .json .js 
grpc-gen --config=custom-config.yml

grpc-gen may also run in watch mode. When your config file or proto files change compilation will re-run.

grpc-gen --watch

Troubleshooting

If grpc-gen is not behaving the way you expect and want to dive into the issue you can run grpc-gen in verbose mode. Just pass --verbose or -v.

grpc-gen --verbose

Readme

Keywords

none

Package Sidebar

Install

npm i grpc-gen

Weekly Downloads

1

Version

1.3.0

License

ISC

Unpacked Size

25.8 kB

Total Files

19

Last publish

Collaborators

  • zaucy