Skip to content
@BasaltProject

Basalt Project

Modern Minecraft infrastructure written in C++

Basalt Basalt

Basalt

Minecraft server software rewritten from scratch in C++23. No JVM.

Minecraft C++ License Website

Basalt is a complete reimplementation of Minecraft: Java Edition server software, written entirely in C++23 and shipped as native binaries. The core needs no JVM installed on the host. Bukkit, Spigot and Paper plugins run through Shim, a JVM in C++ that is built into the binary and only starts when a Java plugin is present.

Two rules decide everything else:

  • Vanilla parity. A Basalt server with no plugins behaves exactly like the official one. Same seed, same world. Same drops, same damage, same redstone, bugs included. Parity is the acceptance criterion for every system, not a long-term aspiration.
  • No external JVM. Not for a feature, not for compatibility, not for convenience. Where a Java library would normally be reached for, the functionality is written instead.

Repositories

Server The Minecraft server: worlds, entities, gameplay, Lua plugins, Bukkit plugins through Shim, and a REST/WebSocket management API
Proxy The proxy: one address in front of many servers, and it works with any of them, Basalt or not
Wire The network layer both of them build on. One implementation of the protocol, not two
Shim A lightweight, embeddable JVM in C++ targeting modern Java LTS releases, forked from Avian
Kiln Compiler and verifier for Lua plugins
DevTools Editor extensions and API autocompletion for plugin authors
Metamorph World conversion between Anvil and Linear, and upgrades from older versions
Quarry Extracts the data Basalt needs from the official server jar
Swarm Bot swarm and stress testing for Minecraft servers
ServerPlugin-Example A reference plugin for the Server plugin API
Website The project site, at basaltmc.org

Status

Early development. Most of vanilla's gameplay is in place in the server and Java plugins run, but some systems are still incomplete and little of it has seen long-term use, so back up your worlds before trusting it with a public server. Older Java clients and Bedrock clients are served through translation layers that are still maturing. The proxy relays real connections and switches servers, but has only been exercised on Linux with bots. Shim modernizes its VM core toward Java 25 LTS. Each repository keeps an honest status in its own README, and none of them rounds up.

Plugins

Native plugins are written in Lua and packaged as single files: .bspkg for the server, .bppkg for the proxy. They run sandboxed with an instruction budget, so a broken plugin cannot take a server down, and the same runtime ships everywhere Basalt runs: the official Lua, built into the binary, with nothing to install alongside it. Kiln and DevTools cover building and writing them. The server also runs Bukkit, Spigot and Paper plugins through Shim.

License

Basalt is distributed under the GNU General Public License v3.0 (Shim and Website are MIT; see individual repositories).

Basalt is not affiliated with Mojang Studios or Microsoft. Minecraft is a trademark of Mojang Studios.

Popular repositories Loading

  1. Server Server Public

    A Minecraft server rewritten from scratch in C++23

    C++ 4

  2. Proxy Proxy Public

    A Minecraft proxy written from scratch in C++23

    C++ 1

  3. Kiln Kiln Public

    Build and package Lua plugins for Basalt

    C++

  4. Wire Wire Public

    The Minecraft network layer shared by Basalt Server and Basalt Proxy

    C++

  5. .github .github Public

    Organization profile for Basalt

  6. Swarm Swarm Public

    Bot swarm and stress testing for Minecraft servers, written in C++23

    C++

Repositories

Showing 10 of 16 repositories
  • Server Public

    A Minecraft server rewritten from scratch in C++23

    BasaltProject/Server's past year of commit activity
    C++ 4 GPL-3.0 0 8 0 Updated Nov 5, 2026
  • Shim Public

    A modern, lightweight, and embeddable JVM in C++. Fork of Avian.

    BasaltProject/Shim's past year of commit activity
    Java 0 MIT 0 0 0 Updated Nov 5, 2026
  • Wire Public

    The Minecraft network layer shared by Basalt Server and Basalt Proxy

    BasaltProject/Wire's past year of commit activity
    C++ 0 GPL-3.0 0 0 0 Updated Nov 5, 2026
  • Documentation Public

    The documentation behind basaltmc.org/docs

    BasaltProject/Documentation's past year of commit activity
    MDX 0 MIT 0 0 0 Updated Nov 5, 2026
  • Proxy Public

    A Minecraft proxy written from scratch in C++23

    BasaltProject/Proxy's past year of commit activity
    C++ 1 GPL-3.0 0 0 0 Updated Nov 3, 2026
  • Bridge Public

    Kotlin compatibility layer for running Basalt Lua plugins on Bukkit, Spigot, Paper, Velocity and BungeeCord, with Gradle integration for JAR and native package builds.

    BasaltProject/Bridge's past year of commit activity
    0 GPL-3.0 0 0 0 Updated Nov 3, 2026
  • Deploy Public

    Docker images and deployment configs for Basalt

    BasaltProject/Deploy's past year of commit activity
    Dockerfile 0 GPL-3.0 0 0 0 Updated Nov 1, 2026
  • Kiln Public

    Build and package Lua plugins for Basalt

    BasaltProject/Kiln's past year of commit activity
    C++ 0 GPL-3.0 0 0 0 Updated Nov 1, 2026
  • DevTools Public

    Editor extensions and API autocompletion for Basalt

    BasaltProject/DevTools's past year of commit activity
    Lua 0 GPL-3.0 0 0 0 Updated Nov 1, 2026
  • ServerPlugin-Example Public

    A reference plugin for Basalt Server's plugin API

    BasaltProject/ServerPlugin-Example's past year of commit activity
    Lua 0 GPL-3.0 0 0 0 Updated Nov 1, 2026

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…