Addon compiler for the Bedrock Edition of Minecraft.
Regolith is a compiler tool designed to streamline the creation and optimization of addons for Minecraft Bedrock Edition.
Key Features:
Cross-platform support for seamless addon development on Windows, Linux, and macOS.
Compiler optimizations to reduce resource usage and improve performance in compiled addons.
Integration with Bedrock Edition's API to ensure compatibility with the latest game updates.
Error handling and debugging tools to identify and resolve issues during compilation.
Audience & Benefit:
Ideal for Minecraft addon developers, modders, and plugin creators who need a reliable and efficient tool to build high-quality addons. Regolith empowers users to optimize their projects, ensuring compatibility and performance in the Bedrock Edition ecosystem.
Available for installation via winget.
README
Regolith
• Regolith is an Add-on Compiler for the Bedrock Edition of Minecraft.
Much like bridge. v2, Regolith introduces the concept of a "project folder", where your addons are written, including the RP, the BP, and any models, textures or configuration files. This single-folder-structure is great for version control, and allows you to keep your "source-of-truth" outside of com.mojang.
In the simplest case, Regolith allows you to "compile" (copy) your RP and BP from the project folder, into the com.mojang folder. During the copy, Regolith will run a series of "filters" on the files, allowing you to programmatically transform them as they are copied into com.mojang. This allows you to transform your addon non-destructively, and to introduce new syntax into addons.
🎫 Value Preposition
Fundamentally, Regolith is nothing new. Many tools like this exist, such as the bridge v2 plugin system, or even something like Gulp or SASS.
The value preposition for Regolith is that it allows many tools, in many languages and pay-structures to work together in a single, unified compilation flow.
Hobbiests can use the Standard Library ⇗, or write their own filters. Marketplace teams can write proprietary filters, or internal filters.
💻 Regolith Development
🎚 Setup:
This setup is for developers. If you're a normal user, you can find simpler
instructions
here.
go get -u ./... to recursively install all dependencies.
3. Test / Run
Since Regolith is a console application which requires very specific
project setup and arguments, go run .\main.go doesn't really do anything.
You can build and install Regolith from source using go install and
test test the application in the same way as user would do, by using
it on a separate Regolith project.
The Go programming language is an open source project to make programmers more productive.
Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.
Gitleaks is a SAST tool for detecting and preventing hardcoded secrets like passwords, api keys,
and tokens in git repos. Gitleaks is an easy-to-use, all-in-one solution for detecting secrets,
past or present, in your code.
A vulnerability scanner for container images and filesystems. Easily install the binary to try it out.
Works with Syft, the powerful SBOM (software bill of materials) tool for container images and filesystems.
yq is a lightweight and portable command-line YAML, JSON and XML processor.
yq uses jq like syntax but works with yaml files as well as json, xml, properties, csv and tsv.
sops is an editor of encrypted files that supports YAML, JSON, ENV, INI and BINARY formats and encrypts with AWS KMS, GCP KMS, Azure Key Vault, age, and PGP.
Syft is a powerful and easy-to-use open-source tool for generating Software Bill of Materials (SBOMs) for container images and filesystems. It provides detailed visibility into the packages and dependencies in your software, helping you manage vulnerabilities, license compliance, and software supply chain security.
The Go programming language is an open source project to make programmers more productive.
Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.
Gitleaks is a SAST tool for detecting and preventing hardcoded secrets like passwords, api keys,
and tokens in git repos. Gitleaks is an easy-to-use, all-in-one solution for detecting secrets,
past or present, in your code.
A vulnerability scanner for container images and filesystems. Easily install the binary to try it out.
Works with Syft, the powerful SBOM (software bill of materials) tool for container images and filesystems.
yq is a lightweight and portable command-line YAML, JSON and XML processor.
yq uses jq like syntax but works with yaml files as well as json, xml, properties, csv and tsv.
sops is an editor of encrypted files that supports YAML, JSON, ENV, INI and BINARY formats and encrypts with AWS KMS, GCP KMS, Azure Key Vault, age, and PGP.
Syft is a powerful and easy-to-use open-source tool for generating Software Bill of Materials (SBOMs) for container images and filesystems. It provides detailed visibility into the packages and dependencies in your software, helping you manage vulnerabilities, license compliance, and software supply chain security.
Goose is a database migration tool. Both a CLI and a library.
Manage your database schema by creating incremental SQL changes or Go functions.
Features
- Works against multiple databases:
- Postgres, MySQL, SQLite, YDB, ClickHouse, MSSQL, Vertica, and more.
- Supports Go migrations written as plain functions.
- Supports embedded migrations.
- Out-of-order migrations.
- Seeding data.
- Environment variable substitution in SQL migrations.
- ... and more.
Goose is a database migration tool. Both a CLI and a library.
Manage your database schema by creating incremental SQL changes or Go functions.
Features
- Works against multiple databases:
- Postgres, MySQL, SQLite, YDB, ClickHouse, MSSQL, Vertica, and more.
- Supports Go migrations written as plain functions.
- Supports embedded migrations.
- Out-of-order migrations.
- Seeding data.
- Environment variable substitution in SQL migrations.
- ... and more.
Goose is a database migration tool. Both a CLI and a library.
Manage your database schema by creating incremental SQL changes or Go functions.
Features
- Works against multiple databases:
- Postgres, MySQL, SQLite, YDB, ClickHouse, MSSQL, Vertica, and more.
- Supports Go migrations written as plain functions.
- Supports embedded migrations.
- Out-of-order migrations.
- Seeding data.
- Environment variable substitution in SQL migrations.
- ... and more.