README.md

December 28, 2025 · View on GitHub

Redstone.Dart

Write Minecraft mods in Dart with hot reload

Warning This project is highly experimental and under active development. APIs are likely to change significantly between versions. Use at your own risk and expect breaking changes.

Minecraft running with Dart support

Minecraft 1.21.1 Dart 3.0+ License MIT

Docs · Get Started · Examples


Redstone.Dart lets you write Minecraft mods in Dart instead of Java. Get instant feedback with hot reload — see your changes in-game without restarting Minecraft.

class MagicBlock extends CustomBlock {
  MagicBlock() : super(
    id: 'mymod:magic_block',
    settings: BlockSettings(hardness: 4.0, luminance: 15),
  );

  @override
  ActionResult onUse(int worldId, int x, int y, int z, int playerId, int hand) {
    Players.getPlayer(playerId)?.sendMessage('§aHello from Dart!');
    return ActionResult.success;
  }
}

Quick Start

# Clone the repository
git clone https://github.com/Norbert515/redstone_dart.git
cd redstone_dart/packages/redstone_cli

# Install the CLI globally
dart pub global activate --source path .

# Create a new mod (from any directory)
cd ~/my_projects
redstone create my_mod
cd my_mod

# Run with hot reload
redstone run

Press r to hot reload your changes instantly.

Requirements

  • Dart SDK 3.0+
  • Java 21+
  • Minecraft Java Edition license (EULA)

No Minecraft installation needed — Redstone downloads everything automatically on first run.

Features

  • Hot Reload — See changes in < 1 second
  • Custom Blocks — Full lifecycle callbacks
  • Custom Items — Behaviors and interactions
  • World API — Place blocks, spawn entities, play sounds
  • Player API — Messages, titles, teleport, inventory
  • Events — Tick, block break, player join, and more
  • DevTools — Full Dart debugging support

Documentation

📖 Read the full documentation →

Platform Support

PlatformStatus
macOS (ARM64 & x64)
Linux x64
Windows x64

License

MIT License


Report BugRequest Feature