From 12d1dcb21d9d0fe81055f1d4392e21caad9abd8d Mon Sep 17 00:00:00 2001 From: bufdev Date: Mon, 16 Sep 2024 15:19:42 -0400 Subject: [PATCH] Update README.md --- README.md | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index ace980a..ff90046 100644 --- a/README.md +++ b/README.md @@ -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