An open API service indexing awesome lists of open source software.

https://github.com/roadrunner-server/api

🔌 RoadRunner API, powered with protobuf. Contains plugins interfaces and proto api.
https://github.com/roadrunner-server/api

Last synced: 4 months ago
JSON representation

🔌 RoadRunner API, powered with protobuf. Contains plugins interfaces and proto api.

Awesome Lists containing this project

README

          















# RoadRunner API

This repository contains the **Protocol Buffer definitions** for [RoadRunner](https://roadrunner.dev). These protos are used for external integrations (RPC) and internal communications between RoadRunner plugins.

Generated Go code lives in a separate repository: [`roadrunner-server/api-go`](https://github.com/roadrunner-server/api-go).

## Repository structure

```
roadrunner/api/ — RoadRunner proto definitions (jobs, kv, http, status, etc.)
third_party/api/ — Temporal API submodule (used as a proto dependency)
buf.yaml — Buf module configuration
buf.gen.yaml — Buf code generation configuration
```

## Using generated Go packages

Install a package from the [`api-go`](https://github.com/roadrunner-server/api-go) repository:

```bash
go get github.com/roadrunner-server/api-go/v5/build//
```

Example usage:

```go
package foo

import (
jobsv1 "github.com/roadrunner-server/api-go/v5/build/jobs/v1"
)

func Push(in *jobsv1.PushRequest, out *jobsv1.Empty) error {
return nil
}
```

## Auto-generation

Pushing to `master` in this repo triggers a GitHub Actions workflow in [`api-go`](https://github.com/roadrunner-server/api-go) that:

1. Pulls the latest proto definitions via a git submodule.
2. Runs `buf generate` to produce Go code.
3. Commits and pushes the result.

You do not need to run code generation manually — CI handles it automatically.

## Local development

Install [Buf](https://buf.build/docs/installation):

```bash
go install github.com/bufbuild/buf/cmd/buf@latest
```

Lint proto files:

```bash
buf lint
```

Generate code locally (output goes to `build/`):

```bash
buf generate
```

## Centrifugal API

- [API](https://github.com/centrifugal/centrifugo/blob/master/internal/apiproto/api.proto)
- [Proxy](https://github.com/centrifugal/centrifugo/blob/master/internal/proxyproto/proxy.proto)