FREEDOM251

Freedom251 › Schema Registry Software

Raystack Stencil

Free plan APILinuxMacSelf-hostedWindows

Visit Raystack Stencil Alternatives

Raystack Stencil's own site

What Raystack Stencil is

Raystack Stencil is a schema registry that gives producers, consumers, developers, and other parties a shared place to manage schema definitions. It supports Protobuf, Avro, and JSON, and keeps versioned histories of proto descriptor files under their namespace and name. By default, Stencil checks schema uploads for backward compatibility; some checks can be skipped. Its APIs can return the latest version for a schema name and namespace or download the complete set of proto descriptors for a specified message.

The server provides gRPC and HTTP APIs, and its command-line interface can create, view, and search schemas. Client libraries are listed for Java, Go, JavaScript, and Clojure. They support downloading descriptor sets, deserializing Protobuf messages, looking up descriptors, and refreshing schema definitions with built-in strategies. Refreshing a descriptor only when a client encounters unknown fields is supported by the Java and Go clients. Stencil can run from a Docker image or be compiled from source, with installation options for macOS, Windows, Linux, OpenBSD, and FreeBSD. The server requires PostgreSQL 13. The project is open source under the Apache-2.0 license and is listed as free.

Who it suits

Stencil suits teams that need a shared registry for schemas used by application producers and consumers, with version history and compatibility checks. It is a fit for teams using Protobuf, Avro, or JSON and working with its listed client libraries and server APIs.

What it does well

  • Supports Protobuf, Avro, and JSON schemas.
  • Checks uploads for backward compatibility by default.
  • Keeps versioned proto descriptor history by namespace and name.
  • Provides gRPC and HTTP APIs plus a schema search CLI.
  • Lists clients for Java, Go, JavaScript, and Clojure.
  • Open source under the Apache-2.0 license.

What to know first

  • The server requires PostgreSQL 13.
  • Unknown-field-triggered descriptor refresh is supported only by Java and Go clients.
  • Ruby and Python clients are marked as coming soon.

Limits

The server requires PostgreSQL 13. Refreshing descriptor files only when a client encounters unknown fields is currently supported by the Java and Go clients.

Getting started

  1. Open the Stencil GitHub repository.
  2. Choose a Docker image or compile the server from source.
  3. Provide PostgreSQL 13 for the server.
  4. Install using the instructions for macOS, Windows, Linux, OpenBSD, or FreeBSD.
  5. Use the CLI to create, view, or search schemas, or connect through the gRPC or HTTP APIs.

Verdict

Choose Stencil if you need a free, open-source registry for Protobuf, Avro, or JSON schemas, with version history and upload compatibility checks. Check the client limitation if your workflow refreshes descriptors after encountering unknown fields, since that behavior is listed for Java and Go clients.

Questions

Is Stencil free and open source?

Yes. Stencil is listed as free and the repository identifies its license as Apache-2.0.

Which schema formats does Stencil support?

It supports Protobuf, Avro, and JSON schemas.

Which compatibility checks does it provide?

Uploads are checked for backward compatibility by default, and some checks can be skipped. The listed compatibility modes are backward, forward, and full.

Which platforms can I install Stencil on?

Installation options are listed for macOS, Windows, Linux, OpenBSD, and FreeBSD. Stencil can run from a Docker image or be compiled from source.

What does the server require?

The server documentation lists PostgreSQL 13 as a requirement.

Which client libraries are listed?

Java, Go, JavaScript, and Clojure clients are listed. Ruby and Python are marked as coming soon.

Facts from Raystack Stencil's own pages

CLI
The CLI can create, view, and search schemas through the server. · github.com, 5 Oct 2026
Client features
Clients can download descriptor set files, deserialize Protobuf encoded messages, look up proto descriptors, and refresh schema definitions using built-in strategies. · raystack.github.io, 4 Oct 2026
Client languages
Official clients are supported for Java, Go, and JavaScript, with Clojure also listed among the client languages. · raystack.github.io, 4 Oct 2026
Client libraries
The repository lists Java, Go, JavaScript, and Clojure clients, with Ruby and Python marked as coming soon. · github.com, 5 Oct 2026
Client refresh limitation
Refreshing a descriptor file only when a client encounters unknown fields is currently supported by the Java and Go clients. · raystack.github.io, 4 Oct 2026
Compatibility
Stencil enforces backward compatibility checks on upload by default and allows some checks to be skipped. · raystack.github.io, 4 Oct 2026
Compatibility checks
Uploads are checked for backward compatibility by default, with an option to skip some checks. · github.com, 5 Oct 2026
Deployment
Stencil can be run as a server and is distributed as cross-platform binaries and Docker images. · github.com, 5 Oct 2026
Descriptor downloads
Users can download proto descriptor files from Stencil. · github.com, 5 Oct 2026
Installation platforms
The README lists macOS, Windows, Linux, OpenBSD, and FreeBSD installation options. · github.com, 5 Oct 2026
Intended users
The project describes its users as developers who create, manage, and consume schemas across applications. · github.com, 5 Oct 2026
License
The repository is published under the Apache-2.0 license. · github.com, 5 Oct 2026
Metadata API
A metadata API retrieves the latest version number for a given name and namespace. · github.com, 5 Oct 2026
Purpose
Stencil is a schema registry for managing and validating schemas to maintain data compatibility across applications. · github.com, 5 Oct 2026
Schema formats
It supports Protobuf, Avro, and JSON schemas. · github.com, 5 Oct 2026
Server APIs
The server provides gRPC and HTTP APIs for interacting with Stencil. · github.com, 5 Oct 2026
Server interfaces
The server provides REST access for storing and retrieving Protobuf file descriptors and the repository README also describes gRPC and HTTP APIs. · raystack.github.io, 4 Oct 2026
Server requirement
The server documentation lists PostgreSQL 13 as a requirement. · raystack.github.io, 4 Oct 2026
Supported formats
Stencil supports Protobuf, Avro, and JSON formats. · raystack.github.io, 4 Oct 2026
Version history
Stencil stores versioned history of proto descriptor files by namespace and name. · github.com, 5 Oct 2026

Where Raystack Stencil stands on Freedom251

Look at these too