Skip to content

SerenityJS/serenity

Repository files navigation


Logo

Minecraft Bedrock Edition Server Software

Explore Documentation »

Report Bug

discord License License

About The Project

Serenity is a robust and flexible Minecraft Bedrock Edition Server Software that was built from the ground up using Rust and TypeScript. Serenity provides a well written set of apis and tools for building Minecraft Bedrock servers, allowing developers to focus on creating unique gameplay experiences, without worrying about the underlying network and protocol details. Serenity is in a active state of development, though is now approaching its first stable release. As some vanilla features are missing, we are working as hard as possible to implement these important features.

Getting Started

Prerequisites

Before installing Serenity you first need to make sure you have the lastest recommended version of Node.js installed on your machine. Once installed, it is recommened to fully restart your machine to allow for the full Node.js experience to be enabled. You will also need to use an integrated development environment of personal choice. Visual Studio Code is the recommended environment for Serenity development.

Serenity is built off of the foundation of Yarn Workspaces for quick and easy development. Before installing Serenity, you will first need to install Yarn. To do this, please read through the Installation Guide provided by the developers of Yarn.

Serenity has started development on a plugin system. This system allows modification to the Serenity software while providing a full api to completely interact with the server. Check out the sample-plugin to get started.

Installing Serenity

We provide an easy to use CLI installer process. Run the following command of your choice, and follow the install prompts.

#npm
npm create serenity
#yarn
yarn create serenity
#pnpm
pnpm create serenity

Common Issues

  • If the server is running, and you cannot see/join the server on your Minecraft server list, you need exempt the Minecraft client from the UWP loopback restrictions. Execute the bash command in a new terminal, while running as administrator. This applies for Windows machines only. CheckNetIsolation.exe LoopbackExempt -a -p=S-1-15-2-1958404141-86561845-1752920682-3514627264-368642714-62675701-733520436 You should be notified with a simple Ok.

Installing Serenity Locally

Installing Serenity locally allows developers to created changes to the core for the application. Clone or download a local copy of the Serenity repository to a perferred area on your machine. You can then open the Serenity folder in your perferred integrated development environment. You will now need to run a few terminal commands before starting.

Setting Up Locally

  • First you will need to initialize the folder using Yarn. Copy and run the command yarn install, follow any steps that may appear on screen.

  • Next you are now ready to build the project, since the project is coded in TypeScript, it will first need to be compiled to JavaScript before running. To do this, run the command yarn build, this command will then compile the project into JavaScript.

  • Finally you are now ready to start the Serenity server. To do this run the command yarn dev, you should then see the server starting in the console.