Skip to Content
⚠ Under Construction
Endstone for Bedrock Edition

The modern Bedrock server stack built without compromises.

Endstone runs the full Bedrock feature set with blazing performance, intuitive tooling, and a familiar plugin workflow. Focus on your community, not on fighting the limitations of legacy software.

[Server] Starting Server
[Server] Level Name: Bedrock level
[Database] Opening level 'worlds/Bedrock level/db'
[Network] IPv4 supported, port: 19132: Used for gameplay and LAN discovery
[Network] IPv6 supported, port: 19133: Used for gameplay
[Server] Server started.

Built to power ambitious communities

Endstone is engineered for creators who demand vanilla accuracy, low latency, and an extensible toolkit for custom gameplay.

Complete vanilla features

Every block, entity, and mechanic works exactly as in Bedrock. No missing features, no behaviour deviations, no compromises.

Battle-tested performance

Built directly on the Bedrock engine, Endstone adds virtually zero overhead and delivers stable TPS.

Plugins that feel familiar

Familiar Paper style APIs with strong typing, full event coverage, and first class C++ and Python support make plugin development effortless.

Always up to date

Major Bedrock releases are supported within days, keeping your servers compatible, secure, and ahead of the curve.

Developer experience you already know

Endstone mirrors the best ergonomics from the Java ecosystem while embracing modern tooling for C++ and Python developers. Scaffold new projects in seconds and enjoy first-class docs, hot-reload support, and an intuitive API design.

  • Type-safe APIs with extensive event coverage
  • WYSIWYG custom command registration
  • Packet intercepting and manipulation
Pythonplugin.py
from endstone.command import Command, CommandSenderfrom endstone.event import event_handler,PlayerJoinEventfrom endstone.plugin import Pluginclass MyPlugin(Plugin):    commands = {        "greet": {            "description": "Send a greeting to the player.",            "usages": ["/greet"],        },    }        def on_enable(self) -> None:        self.register_events(self)            @override    def on_command(self, sender: CommandSender, command: Command, args: list[str]) -> bool:        match command.name:            case "greet":                sender.send_message(f"Hello, {sender.name}!")                break        return True    @event_handler    def on_player_join(self, event: PlayerJoinEvent) -> None:        event.message = f"Welcome to the server, {event.player.name}!"

Launch in minutes

Everything you need to go from zero to a production-ready Bedrock server.

Install Endstone

  • pipx install endstone
  • Configure your server properties

Pick your plugins

  • Browse the curated plugin repository
  • Restart your server to load new plugins

Deploy anywhere

  • Deploy to Linux or Windows
  • Run inside a docker container

Ready to build the next generation of Bedrock experiences?

Join thousands of creators running Endstone to power their survival servers, minigames, and custom gamemodes.