https://github.com/bufbuild/bufplugin
The APIs for plugins to the Buf platform.
https://github.com/bufbuild/bufplugin
grpc protobuf protocol-buffers
Last synced: 12 months ago
JSON representation
The APIs for plugins to the Buf platform.
- Host: GitHub
- URL: https://github.com/bufbuild/bufplugin
- Owner: bufbuild
- License: apache-2.0
- Created: 2024-09-04T17:55:09.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-01-21T21:19:40.000Z (about 1 year ago)
- Last Synced: 2025-04-01T16:57:15.375Z (12 months ago)
- Topics: grpc, protobuf, protocol-buffers
- Language: Makefile
- Homepage: https://buf.build
- Size: 57.6 KB
- Stars: 4
- Watchers: 8
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# bufplugin
[](https://github.com/bufbuild/bufplugin/actions/workflows/ci.yaml)
[](https://buf.build/bufbuild/bufplugin)

[](https://buf.build/links/slack)
Bufplugin is Buf's framework for authoring plugins that work with the Buf CLI and Buf Schema
Registry. Currently, this provides an API for custom lint and breaking change plugins, so users can
implement their own lint and breaking change rules.
This repository contains the Protobuf APIs that comprise the bufplugin framework. Buf plugins are
implemented using [PluginRPC](https://github.com/pluginrpc/pluginrpc). The entrypoint for custom
lint and breaking change plugins is the [CheckService](buf/plugin/check/v1/check_service.proto). A
plugin is simply an implementation of the `CheckService` served via `PluginRPC` in a built binary.
While the APIs provide a mechanism to implement a Buf plugin in any language, we provide
[bufplugin-go](https://github.com/bufbuild/bufplugin-go) as an easy way to author Buf plugins in Go.
We would highly recommend starting there: **bufplugin-go is the best way to author custom lint and
breaking change plugins, and is likely the repository you are looking for.**
See [buf.build/bufbuild/bufplugin](https://buf.build/bufbuild/bufplugin) for all API documentation.
## Status: Beta
Bufplugin is currently in beta, and may change as we work with early adopters. We're intending to
ship a stable v1.0 by the end of 2024. However, we believe the API is near its final shape.
## Legal
Offered under the [Apache 2 license](https://github.com/bufbuild/bufplugin/blob/main/LICENSE)