Steel-Foundation /SteelMC

A Minecraft server in Rust focused on a strong foundation and performance

★ 989⑂ 134👁 12⑃ 736● 121▤ 32◈ 0
RustAGPL-3.0Created 2025-10-15steelmc.dev/
989
stars
134
forks
12
watchers
736
prs
121
issues
32
releases
0
discussions

README

SteelMC


  A Minecraft Java Edition server written in Rust.



  
  
  
  



  Website ·
  Documentation ·
  Implementation tracker ·
  Discord


!A sunset over a SteelMC-generated world, with forests, rivers, mountains, and a lit village

 [!IMPORTANT]
 SteelMC is still pre-alpha. You can connect and explore generated worlds, but
 survival gameplay is incomplete and many vanilla systems are still missing. Do not
 replace your production server with it yet.

 What is SteelMC?

SteelMC is an independent implementation of the Minecraft Java Edition server. It
tracks the latest Java Edition release and currently targets Minecraft 26.3.

The goal is to match vanilla behavior while making better use of modern multicore
hardware. Gameplay updates remain synchronous, while chunk generation, lighting,
packet processing, and chunk sending can run outside the main tick.

 World generation

World generation is currently the most complete part of SteelMC. Its parity suite
compares 7,500 randomly selected chunks with a reproducible vanilla reference: 2,500
in each dimension. All tested chunks match block for block. Entity spawning is not
included because most entity behavior has not been implemented yet.

In a focused benchmark on a Ryzen 9 9950X, SteelMC generated a fresh
10,201-chunk Overworld area in a median of 3.98 seconds. Results vary with hardware,
and this benchmark does not represent every server workload.

Read Introducing SteelMC for the design
story, parity methodology, benchmark context, and limitations. Full results and
reproduction instructions are available on the
benchmark page.

 Current status

Today, clients can join a persistent multiplayer world, move and interact, use
inventories and commands, and return later to saved chunks. SteelMC currently
provides:

- Java Edition networking, authentication, encryption, and compression
- Persistent chunk generation, loading, saving, and lighting
- Player movement, collision, block interaction, and inventories
- Commands, permissions, chat, and server configuration
- Early entity, block entity, and gameplay behavior implementations

SteelMC is not ready to replace an established server:

- Survival gameplay is incomplete.
- Only a small number of entities have meaningful behavior.
- Full vanilla and protocol parity have not been reached.
- Plugins are not available yet.
- Paper, Bukkit, Fabric, Forge, and NeoForge extensions are not compatible.

Follow the implementation tracker for a more detailed
view of what is available today.

 Try it

Pre-built releases, Docker images, and source-build instructions are available in
the installation guide.

Expect bugs and incomplete mechanics. If you try SteelMC, please share what you find
on Discord or open a
GitHub issue.

 Contributing

Contributions are welcome. Most changes begin by reading the vanilla source,
understanding the behavior it implements, and deciding how to express that behavior
cleanly in Rust.

As a new contributor, please limit yourse

Top issues

Latest release

v0.17.0+mc26.3 v0.17.0+mc26.3 2026-11-06
What's Changed
 Blocks
 Finish sign block (757) by @AshuraVie in https://github.com/Steel-Foundation/SteelMC/pull/786
 feat: Add Vanilla-compatible destructive explosions and TNT by @kdcokenny in https://github.com/Steel-Foundation/SteelMC/pull/428
 Feat: spawner by @chocodev11 in https://github.com/Steel-Foundation/SteelMC/pull/712
 feat: implement the enchanting table by @JosepBove in https://github.com/Steel-Foundation/SteelMC/pull/623
 Entities
 feat(entity): implementation of squid by @quaid-perkins in https://github.com/Steel-Foundation/SteelMC/pull/693
 Lingering Potions by @tangjuyo in

Snapshot: 2026-11-11T15:31:17Z · Data license Apache-2.0 · JSON