protobuf_runner 1.0.0

  • Installing
  • Versions
  • 44


Builds Dart protocol buffers.


Make a protobuf file:

syntax = "proto2";

package address_book;

message Person {
    required string name = 1;
    required int32 id = 2;
    optional string email = 3;

    enum PhoneType {
        MOBILE = 0;
        HOME = 1;
        WORK = 2;

    message PhoneNumber {
        required string number = 1;
        optional PhoneType type = 2 [default = HOME];

    repeated PhoneNumber phones = 4;

message AddressBook {
    repeated Person people = 1;

Run the command:

pbuf address_book.proto

Enjoy your new Protocol Buffer!

import 'package:dart_protobuf_example/address_book.pb.dart';

main() {
  var people = [
    new Person() = "Jack Ryan" = "",
    new Person() = "Brad Ryan" = ""
  var x = new AddressBook();
  // prints {"1":[{"1":"Jack Ryan","3":""},{"1":"Brad Ryan","3":""}]}

Getting Started:

Install the latest protoc command:

brew install protoc

Install dart_protoc_plugin on your machine:

git clone
cd dart-protoc-plugin
pub get

Install this tool:

pub global activate protobuf_runner


Option 1: using the DART_PROTOC_PLUGIN environment variable:

export DART_PROTOC_PLUGIN=/path/to/dart-protoc-plugin 
pbuf /path/to/project/lib/address_book.proto

Option 2: using the --plugin flag:

pbuf --plugin=/path/to/dart-protoc-plugin /path/to/project/lib/address_book.proto


to install locally:

pub global activate --source path  /path/to/protobuf_runner/


Please use the Issue Tracker



  • Initial version, created by Stagehand

Use this package as an executable

1. Install it

You can install the package from the command line:

$ pub global activate protobuf_runner

2. Use it

The package has the following executables:

$ pbuf
Version Uploaded Documentation Archive
1.0.0 Mar 5, 2017 Go to the documentation of protobuf_runner 1.0.0 Download protobuf_runner 1.0.0 archive


We analyzed this package on Jun 19, 2018, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.0.0-dev.63.0
  • pana: 0.11.3


Describes how popular the package is relative to other packages. [more]
0 / 100
Code health derived from static analysis. [more]
100 / 100
Reflects how tidy and up-to-date the package is. [more]
71 / 100
Overall score:
Weighted score of the above. [more]
Learn more about scoring.


Detected platforms: Flutter, web, other

No platform restriction found in libraries.


  • Fix analysis_options.yaml.

    We were unable to parse analysis_options.yaml.

  • Package is getting outdated.

    The package was released 67 weeks ago.

  • The description is too short.

    Add more detail about the package, what it does and what is its target use case. Try to write at least 60 characters.

  • Maintain an example.

    None of the files in your example/ directory matches a known example patterns. Common file name patterns include: main.dart, example.dart or you could also use protobuf_runner.dart.

  • Enable strong mode analysis.

    Strong mode helps you to detect bugs and potential issues earlier.Start your analysis_options.yaml file with the following:

      strong-mode: true


Package Constraint Resolved Available
Direct dependencies
Dart SDK >=1.8.0 <2.0.0
args ^0.13.7 0.13.7 1.4.3
path ^1.4.1 1.6.1