Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
bufdev committed Sep 16, 2024
1 parent 92ae229 commit 12d1dcb
Showing 1 changed file with 14 additions and 9 deletions.
23 changes: 14 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,20 +6,25 @@
[![Slack](https://img.shields.io/badge/Slack-Buf-%23e01563)](https://buf.build/links/slack)

Bufplugin is Buf's framework for authoring plugins that work with the Buf CLI and Buf Schema
Registry. We're starting out by providing a way to implement custom lint and breaking change
plugins, so users can implement their own lint and breaking change rules.
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 the [PluginRPC](https://github.com/pluginrpc/pluginrpc) RPC framework.
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 you can implement a Buf plugin in any language, we provide
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'd highly recommend starting there.
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.

## Status: Alpha
See [buf.build/bufbuild/bufplugin](https://buf.build/bufbuild/bufplugin) for all API documentation.

Bufplugin is as early as it gets - [buf](https://github.com/bufbuild/buf) doesn't actually support
plugins yet! We're publishing this publicly to get early feedback as we approach stability.
## 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

Expand Down

0 comments on commit 12d1dcb

Please sign in to comment.