MLEM Library for Extending MonoGame, FNA and KNI is a set of multipurpose libraries for the game frameworks MonoGame, FNA and KNI that provides abstractions, quality of life improvements and additional features like an extensive ui system and easy input handling.
MLEM is platform-agnostic and multi-targets .NET Standard 2.0, .NET 8.0 and .NET Framework 4.5.2, which makes it compatible with MonoGame, FNA and KNI on Desktop, mobile devices, consoles and web.
- Get it on NuGet
- Get prerelease builds on BaGet
- See the source code on GitHub
- See tutorials and API documentation on the website
- Check out the demos on Desktop, Android or Web
- See the changelog for information on updates
- Join the Discord server to ask questions
- MLEM is the base package, which provides various small addons and abstractions for MonoGame, FNA and KNI, including a text formatting system and simple input handling
- MLEM.Ui provides a mouse, keyboard, gamepad and touch ready Ui system that features automatic anchoring, sizing and several ready-to-use element types
- MLEM.Extended ties in with MonoGame.Extended and other MonoGame and FNA libraries
- MLEM.Data provides simple loading and processing of textures and other data, including the ability to load non-XNB content files easily
- MLEM.Startup combines MLEM with some other useful libraries into a quick Game startup class
- MLEM.Templates contains cross-platform project templates
- Touchy Tickets, a mobile idle game (Source)
- A Breath of Spring Air, a short platformer (Source)
- Don't Wake Up, a short puzzle game (Source)
- Pong Clone, a very simple pong clone demo (Source)
- Tiny Life, an isometric life simulation game (Modding API)
If you created a project with the help of MLEM, you can get it added to this list by submitting an issue or a pull request. If its source is public, other people will be able to use your project as an example, too!
Here are some images that show a couple of MLEM's features.
The MLEM.Ui demo in action:
MLEM's text formatting system, which is compatible with both MLEM.Ui and regular sprite batch rendering:
There are several other libraries and tools that work well in combination with MonoGame, FNA, KNI and MLEM. Here are some of them:
- Contentless, a tool that removes the need to add assets to the MonoGame Content Pipeline manually
- GameBundle, a tool that packages MonoGame and other .NET applications into several distributable formats
- Coroutine, a package that implements Unity-style coroutines for any project
- MonoGame.Extended, a package that also provides several additional features for MonoGame