Infrastructure-as-Code deployment for Roblox, written in TypeScript.
Pre-release. APIs are unstable and nothing is published to npm yet. Follow the repository or the project board for progress.
Bedrock declaratively manages Roblox experiences the way Terraform manages cloud resources. Describe the places, game passes, badges, and other resources an experience should have in a config file; Bedrock figures out what to create, update, or delete to match.
It is a spiritual successor to Mantle (no longer maintained), rebuilt in TypeScript on top of Roblox Open Cloud.
- Open Cloud only. No
ROBLOSECURITYcookies or legacy endpoints. Authenticate with API keys, the way Roblox now recommends. - Programmatic first, CLI second. Consume Bedrock as a library from your own tooling, or reach for the CLI for day-to-day deploys. See ADR-017.
- State in a GitHub Gist. Zero external services to stand up; a
BEDROCK_GITHUB_TOKENis enough. Extensible to other backends. - Multi-format config. TypeScript, JavaScript, YAML, or JSON via c12.
| Package | Description |
|---|---|
@bedrock-rbx/core |
The deployment library and CLI. |
@bedrock-rbx/ocale |
Standalone HTTP client for Roblox Open Cloud. |
Bedrock is in active development ahead of a first public release. Core pieces in place today:
- Open Cloud client (
@bedrock-rbx/ocale) with game-pass and place resources, built-in rate limiting, retries, and 100% test coverage. - State data model and diff algebra (ADR-019).
- FCIS + Ports architecture with explicit primary/driven port distinction (ADR-018).
The CLI surface and higher-level deploy workflow are next. Track progress
on the project board.
There is nothing to install from npm yet. To poke at the code locally:
git clone https://github.com/christopher-buss/bedrock.git
cd bedrock
pnpm install
pnpm build
pnpm testThe repository uses pnpm workspaces and Bun (>= 1.3) as the runtime. TypeScript builds, tests, and task orchestration run through Vite+.
- Documentation site (work in progress)
- Architecture Decision Records covering every significant design choice
This is a solo-maintainer project with an inverted contribution model. External input runs through Discussions as prompt requests: share the prompt you would run rather than opening a PR, and I will run it myself if the idea lands. Issues are maintainer-only. Read CONTRIBUTING.md before opening anything.
By participating, you agree to abide by the Code of Conduct.
To report a security vulnerability, follow SECURITY.md.
MIT (c) Christopher Buss.