Architectury API: A Multiplatform Modding Tool
MODArchitectury API is an intermediary API designed to simplify the development of multiplatform Minecraft mods across both Fabric and Forge loaders.
The challenge of developing Minecraft mods often involves choosing between different loader APIs like Fabric and Forge. Each has its unique implementation for common game elements, forcing developers to maintain separate codebases or write complex conditional logic. Architectury API addresses this by acting as a crucial abstraction layer.
If you are a mod developer aiming to make your creations compatible with both Fabric and Forge without duplicating effort, Architectury API is designed for you. It provides a unified interface, allowing you to write core mod logic once and deploy it across multiple loader environments, significantly reducing development time and maintenance overhead. While Architectury API is a runtime dependency for mods that leverage its abstraction features, the broader multiplatform development ecosystem is enabled by the Architectury Plugin for Gradle.
- Cross-Loader Abstraction: Unifies common API calls that differ between Fabric and Forge, such as event hooks, networking, and game registry interactions.
- Extensive Hook Coverage: Offers over 90 event hooks and growing, providing comprehensive points for mod integration.
- Simplified Multiplatform Code: Features a powerful
@ExpectPlatformannotation, specifically for static methods, to manage platform-specific code paths cleanly. - Reduced Boilerplate: Helps minimize redundant code, allowing developers to focus more on unique mod features rather than platform compatibility details.
- Open-Source Project: Developed and maintained transparently, benefiting from community contributions and scrutiny.
To utilize Architectury API for multiplatform mod development, integration with the Architectury ecosystem is necessary. This primarily involves using Architectury Plugin with Gradle to manage multiplatform builds and dependencies. Architectury API itself serves as a runtime dependency for your mod if you are using its provided abstractions and hooks. Developers should also note that the @ExpectPlatform annotation is specifically designed for use with static methods.