Protorip
---
site: protos.rip
page: blog/remote-code-generation
---
    __    __           
   / /_  / /___  ____ _
  / __ \/ / __ \/ __ `/
 / /_/ / / /_/ / /_/ / 
/_.___/_/\____/\__, /  
              /____/   

# Remote code generation on protos.rip

Marc Porciuncula, Founder of Strange Computer

One of the best parts of the `buf` and BSR workflow is remote code generation. It lets you compile your Protobuf files into types, serialisation code, and typed clients for your language and framework without installing or managing `protoc` compiler plugins locally.
In practice, that eliminates a lot of quiet friction: no brittle toolchain setups across developer machines, no keeping plugin binaries pinned in sync across CI runners, and no standing up custom Docker containers just to generate code reliably. You declare the plugins and versions you want in `buf.gen.yaml`, run `buf generate`, and get deterministic output checked straight into your repo.
Today I’ve brought that same experience to `protos.rip`. You can now point `buf.gen.yaml` at hosted community plugins on `protos.rip` and run `buf generate` directly:
```diff  version: v2  plugins:-   - remote: buf.build/protocolbuffers/go:v1.36.12+   - remote: protos.rip/protocolbuffers/go:v1.36.12      out: gen/go      opt: paths=source_relative-   - remote: buf.build/bufbuild/es:v2.16.0+   - remote: protos.rip/bufbuild/es:v2.16.0      out: web/src/gen```

## Plugin support

`protos.rip` targets parity with Buf’s remote plugin releases under matching `<scope>/<plugin>` paths, so switching `buf.gen.yaml` stays a hostname change. I’ve started populating remote plugin support with over 100 validated Go and TypeScript/JavaScript releases, including `protocolbuffers/go`, `connectrpc/go`, and `bufbuild/es`.
Python, Rust, Swift, Java, and Kotlin plugins are rolling out as their baselines are verified. If your project needs a plugin or older version that isn’t supported yet, email [hello@protos.rip](mailto:hello@protos.rip) and I’ll enable it.
I’ve also launched searchable [plugin](/plugins) and [module registry](/registry) listing pages, so you can check exact supported plugin versions before updating `buf.gen.yaml` and look up schemas directly on the site.

## Caching and limits

Repeat generation requests are cached automatically and cost nothing on any plan. When your schemas or plugin options change, paid and [OSS](/oss) plans run uncached builds under generous fair-use limits that never cut you off or add overage charges.
See the [remote code generation docs](/remote-generation) for the full details on caching and limits.

## What’s next

With both module hosting and `buf generate` running natively on `protos.rip`, I’m continuing to expand the plugin catalog and working toward hosted generated SDK registries for Go and npm.

[← all posts](/blog)