Framework
Modby MrCrayfish
A common library powering all of MrCrayfish's Mods
Downloads
107,644,399
Type
Mod
CurseForge ID
549225
Last Updated
Apr 8, 2026
Description

๐ About:
Framework is a library designed to aid in the development of multi-platform mods, containing systems for registration, network messages, and more. In addition, Framework contains additional features to further unlock the potential of modding, which can be read below.
๐ Open Model Format
Open Model Format is an extension to Vanilla's JSON Block Model format. It removes the arbitrary restrictions placed on designing block models, this means you can now rotate an element to any angle instead ofย 22.5 increments. It also allows elements to be positioned and sized larger than the maximum bounds [-16,-16, -16] to [32, 32, 32]. Below is an example of a helicopter model used in a vehicle mod.
๐ Synced Data Keys
Synced Data Keys are an improvement of Minecraft's entity data accessor system. It allows you to attach additonal data to any entity without the need of writing a complex capability. The benefit of using Framework's Synced Data Keys is the powerful features it provides. As mentioned by in the name, the data can be automatically synced to clients; this means you don't have to deal with packets. The data can be saved to the entity so it's remembered across world reloads or server restarts. Unlike Minecraft's system, Framework adds an option to allow your data to persist across deaths instead of being reset back to it's default value. Not convinced yet? Check out the example below to see how simple but powerful this system is.
An example of keeping track of how many times a chicken has been hit by players.
// Creating a synced data key private static final SyncedDataKey<Chicken, Boolean> HIT_COUNT = SyncedDataKey.builder(SyncedClassKey.CHICKEN, Serializers.INTEGER) .id(new ResourceLocation("your_mod_id", "hit_count")) .defaultValueSupplier(() -> 0) .saveToFile() .syncMode(SyncMode.TRACKING_ONLY) .build(); // Call this in your common setup FrameworkAPI.registerSyncedDataKey(HIT_COUNT); // Forge event for when a player attacks an entity void onHitEntity(AttackEntityEvent event) { if(event.getTarget() instanceof Chicken chicken) { int newCount = HIT_COUNT.getValue(chicken) + 1; HIT_COUNT.setValue(chicken, newCount); } }๐ฆ Easy Login Packets
Forge has the ability to allow developers to create login packets, however implementing it requires a significant amount of code. Framework condenses the required code into a simple registration method and will handle sending your data to clients.

๐ Developers:
Discover how Framework can be beneficial to your development by reading about it's features here.

๐โโ๏ธ Need Support? Join the Official Discord Server:
The comment section isn't great for support, join the official discordย server. You can get help installing and configuring mods, resolving crashes and more! Plus you'll also get access to news about mod updates and development (before anywhere else).
Screenshots
Similar Mods
Mouse Tweaks
Enhances inventory management by adding various functions to the mouse buttons.
AppleSkin
Adds some useful information about food/hunger to the HUD
Bookshelf
An open source library for other mods!
Controlling
Adds a search bar to the Key-Bindings menu
GeckoLib
A 3D animation library for entities, blocks, items, armor, and more!
Clumps
Clumps XP orbs together to reduce lag
Included in Modpacks
Better MC [FORGE] - BMC4