stencil

(β˜… 237)

Stencil is a schema registry that provides schema management and validation dynamically, efficiently, and reliably to ensure data compatibility across applications.

  • .gitignore
  • .golangci.yaml
  • .goreleaser.yaml
  • buf.gen.yaml
  • docker-compose.yml
  • Dockerfile
  • go.mod
  • go.sum
  • LICENSE
  • main.go
  • Makefile
  • README.md

# Installation Guide

1. Get the code
git clone https://github.com/raystack/stencil

Downloads the entire project code from GitHub to your computer.

cd stencil

Moves into the project folder you just downloaded.

2. Official Install Script

Easy Recommended
Prerequisites
  • Homebrew A package manager for macOS/Linux.
brew install raystack/tap/stencil

Installs the pre-built package via Homebrew β€” no source build required.

βœ… After installing, open a new terminal and run the program's version command (e.g. --version) to confirm it worked.

Pulled directly from this repo's README.

3. Docker

Easy
Prerequisites
  • Git Needed to download the project code from GitHub.
  • Docker Desktop Needed to build and run containers. Install it and keep it running in the background.
docker pull raystack/stencil:latest

Type this command into your terminal and run it.

docker pull raystack/stencil:v0.5.1

Type this command into your terminal and run it.

βœ… Run docker compose ps to check the containers are Up. If the README mentions a port, open http://localhost:PORT in your browser.

Pulled directly from this repo's README.

4. Gradle (Java/Kotlin)

Medium
Prerequisites
  • Git Needed to download the project code from GitHub.
  • JDK (Java) Required to build and run Java/Kotlin projects.
  • Gradle If the repo includes gradlew (Gradle Wrapper), you don't need to install Gradle separately.
⚠️ This is a large repository, so this method may point to an internal sub-package rather than the actual core product. Check the full README as well.
cd clients/java

This project's files live in a subfolder, so move into it first.

./gradlew build

Builds the project using Gradle.

βœ… A BUILD SUCCESSFUL message means it worked. The output is created under build/.

5. Node.js

Easy
Prerequisites
  • Git Needed to download the project code from GitHub.
  • Node.js Node.js must be installed to use npm. The LTS version is recommended.
- Yarn (Needed for UI)

Type this command into your terminal and run it.

βœ… After running the command, open the address shown in the terminal (usually something like http://localhost:3000) in your browser.

Pulled directly from this repo's README.

6. Python

Easy
Prerequisites
  • Git Needed to download the project code from GitHub.
  • Python 3 On Windows, be sure to check 'Add Python to PATH' during installation.
⚠️ This is a large repository, so this method may point to an internal sub-package rather than the actual core product. Check the full README as well.
pip install -r clients/python/requirements.txt

Installs the Python libraries listed in requirements.txt (or similar).

python <μ‹€ν–‰ν•  파일λͺ…>.py # READMEμ—μ„œ μ •ν™•ν•œ μ‹€ν–‰ 파일λͺ…을 ν™•μΈν•˜μ„Έμš”

Runs the Python script (or module).

βœ… If it runs without errors and prints output in the terminal, it worked.

7. Go

Medium
Prerequisites
  • Git Needed to download the project code from GitHub.
  • Go The Go compiler and toolchain.
cd clients/go

This project's files live in a subfolder, so move into it first.

go build ./...

Compiles the Go program into an executable.

go run .

Runs the Go program directly without a separate build step.

βœ… If the build finishes without errors, it worked. If you used go run ., check the terminal output.

8. Make

Medium
Prerequisites
  • Git Needed to download the project code from GitHub.
  • Make Usually pre-installed on Linux/macOS. On Windows, install separately (e.g. via MSYS2 or WSL).
make

Compiles the code based on the generated build configuration to produce an executable.

βœ… If it finishes without errors, it worked. Try running the generated executable directly.
// repository documentation