Sharpmine is a custom Minecraft server implementation built from the ground up using C# 14 and .NET 10.
There are still many components missing, but this project is on a strong trajectory toward becoming an actually useful server engine.
The project aims to provide a cross-platform, high-performance, efficient server engine. Instead of using reflection, it makes use of Roslyn Source Generators to automate packet registration at compile time, ensuring the networking layer is as fast as possible.
Sharpmine.Server.Core: Contains the core game logic,System.IO.Pipelinesnetworking, and protocol implementation.Sharpmine.Server.Console: Lightweight console application that basically just wrapsSharpmine.Server.Core.Sharpmine.Server.Wpf: A Windows-native desktop application built with WPF, also wrappingSharpmine.Server.Corebut displaying logs in a more user-friendly way.Sharpmine.Gen: The incremental source generator for the protocol. It automates the generation of a dedicated class for each and every Minecraft packet.Sharpmine.Tests: Unit tests.Sharpmine.AppHostandSharpmine.ServiceDefaults: Aspire orchestration. Not yet made proper use of, but maybe in the future.
Any contribution is greatly appreciated! Feel free to open issues or fork the repo and maybe even submit a pull request. :D