vscode-proto3 installs statistics
By zxh404 · VS Code Marketplace · Programming Languages
Protobuf 3 support for Visual Studio Code
vscode-proto3 has 3,013,359 recorded installs on VS Code Marketplace, ranking #252 of 2,502 tracked listings.
Rating: 3.81 / 5 from 16 ratings
About vscode-proto3
vscode-proto3
![]()
Protobuf 3 support for Visual Studio Code
https://github.com/zxh0/vscode-proto3
VSCode Commands
By default ctrl-shift-p opens the command prompt.
| Command | Description |
|---|---|
proto3: Compile All Protos | Compiles all workspace protos using configurations defined with protoc.options. |
proto3: Compile This Proto | Compiles the active proto using configurations defined with protoc.options. |
Features
- syntax highlighting.
- syntax validation.
- code snippets.
- code completion.
- code formatting.
- brace matching.
- line and block commenting.
- compilation.

Syntax Highlighting
The grammar is written in tmLanguage JSON format.
Syntax Validation
The validation is triggered when you save the proto file. You need protoc
compiler to enable syntax validation. You also need a settings.json file
to tell the extension the full path of protoc if it is not in path.
Extension Settings
Below is an example settings.json file which comes from example/.vscode:
{
"protoc": {
"path": "/path/to/protoc",
"compile_on_save": false,
"options": [
"--proto_path=protos/v3",
"--proto_path=protos/v2",
"--proto_path=${workspaceRoot}/proto",
"--proto_path=${env.GOPATH}/src",
"--java_out=gen/java"
]
}
}
Fields
The possible fields under the protoc extension settings which can be defined in a settings.json file.
| Field | Type | Default | Description |
|---|---|---|---|
| path | string | protoc in PATH | Path to protoc. Defaults to protoc in PATH if omitted. |
| compile_on_save | boolean | false | On .proto file save, compiles to --*_out location within options |
| compile_all_path | string | Workspace Root | Search Path for Compile All Protos action. Defaults to the Workspace Root |
| use_absolute_path | boolean | false | Set true for compile_all_path search files using absolute path |
| options | string[] | [] | protoc compiler arguments/flags, required for proto validation and compilation |
In-Line Variables
These variables can be used to inject variables strings within the protoc extension configurations. See above for examples.
| Variable | Description |
|---|---|
| config.* | Refer settings items in Preferences. |
| env.* | Refer environment variable. |
| workspaceRoot | Returns current workspace root path. |
Code Completion
A very simple parser is written to support code completion.
Code Snippets
| prefix | body |
|---|---|
| sp2 | syntax = "proto2"; |
| sp3 | syntax = "proto3"; |
| pkg | package package.name; |
| imp | import "path/to/other/protos.proto"; |
| ojp | option java_package = "java.package.name"; |
| ojoc | option java_outer_classname = "ClassName"; |
| o4s | option optimize_for = SPEED; |
| o4cs | option optimize_for = CODE_SIZE; |
| o4lr | option optimize_for = LITE_RUNTIME; |
| odep | option deprecated = true; |
| oaa | option allow_alias = true; |
| msg | message MessageName {} |
| fbo | bool field_name = tag; |
| fi32 | int32 field_name = tag; |
| fi64 | int64 field_name = tag; |
| fu32 | uint32 field_name = tag; |
| fu64 | uint64 field_name = tag; |
| fs32 | sint32 field_name = tag; |
| fs64 | sint64 field_name = tag; |
| ff32 | fixed32 field_name = tag; |
| ff64 | fixed64 field_name = tag; |
| fsf32 | sfixed32 field_name = tag; |
| fsf64 | sfixed64 field_name = tag; |
| ffl | float field_name = tag; |
| fdo | double field_name = tag; |
| fst | string field_name = tag; |
| fby | bytes field_name = tag; |
| fm | map<key, val> field_name = tag; |
| foo | oneof name {} |
| en | enum EnumName {} |
| sv | service ServiceName {} |
| rpc | rpc MethodName (Request) returns (Response); |
Google API Design Guide
The following snippets are based on Google API Design Guide.
| prefix | reference |
|---|---|
| svgapi | Standard Methods |
Code Formatting
Support "Format Document" if clang-format is in path, including custom style options.…
Description from the VS Code Marketplace listing.
- proto3
- Protocol Buffers
- snippet
README badge
Show your rank in a README or on your website. The badge updates automatically.
Charts
Images: 30d · 1y · all time · 1600×900 dark
Adoption over time
7/30/90-day growth
Ranking history
Ratings over time
Listing placement
Listing placement
Listing placement
Filled points are observed values; hollow points come from Internet Archive snapshots of the listing page. Dashed segments span periods with no observations — values between points are not interpolated.
Each band is one page of 20. Installs on a linear scale. Placement is projected from installs, so it can differ from the marketplace's own sort order. Hover a dot to see the listing.
Recent observations
Full history (7)Similar VS Code Marketplace Programming Languages plugins
All 20 vscode-proto3 alternativesData source
Install counts, average rating, and rating counts come from the public Visual Studio Marketplace gallery API. Installs are cumulative and exclude updates.
Listing: https://marketplace.visualstudio.com/items?itemName=zxh404.vscode-proto3. First seen Oct 16, 2026; last successful collection Oct 22, 2026. See the methodology.