Scarlet
Scarlet is an interpreted programming language specifically designed for Minecraft and running on Fabric Loader. This modification enables rapid prototyping for server scripting and game content development.
What is Scarlet used for?
With Scarlet, you can easily add new script-based content to the game without prior Java programming experience. The primary target audience includes players who want to enhance gameplay on private servers with friends, as well as creators of Minecraft video content and mini-games (which isn't Java's strong suit).
While Scarlet is suitable for writing events in modpacks, for serious projects intended for public release, it's recommended to use KubeJS.
Usage Example
Scarlet scripts are placed in the /run/scarlet/ directory with the .scarlet file extension. To reload all scripts, simply press the 'R' key. Let's consider a simple example - displaying a welcome message when a player joins the server:

What if you make a mistake while writing code? Scarlet features a user-friendly error handling system that precisely indicates the problematic code location:

Additional Examples
In the mod's repository in the /example_scripts/ directory, you'll find a collection of script examples. Here are some of them:
- File operations
- Iteration and delays
- Java property resolution
Project Stability
Scarlet is primarily an educational project in programming language design, created for personal enjoyment. At the current development stage, no guarantees are given regarding script stability and API interactions.
The mod versions will remain in the 0.x.x scheme as long as the project is considered unstable and subject to changes. After the release of version 1.x.x, the main focus will be on maintaining API stability so that updates don't break existing scripts.
Licensing
The Scarlet project began as an educational endeavor based on the "Crafting Interpreters" book and other compiler resources, hence it's distributed under the MIT license. This means you can freely use code from this repository provided you retain the license file for significant code portions.