Mods
Resource Packs
Data Packs
Modpacks
Shaders
Plugins
Mods Resource Packs Data Packs Plugins Shaders Modpacks
Get Modrinth App Upgrade to Modrinth+
Sign in
ModsPluginsData PacksShadersResource PacksModpacks
Sign in
Settings
MagicLib

MagicLib

To beat magic with magic :(

560.3k
101
Library

Compatibility

Minecraft: Java Edition

1.21.x
1.20.x
1.19.x
1.18.2
1.17.1
1.16.5
1.15.2
1.14.4

Platforms

Fabric
Forge
NeoForge
Quilt

Supported environments

Client and server

90% of ad revenue goes to creators

Support creators and Modrinth ad-free with Modrinth+

Links

Report issues View source

Creators

hendrix-shen
hendrix-shen Owner
plusls
plusls Member

Details

Licensed LGPL-3.0-only
Published 3 years ago
Updated last month
DescriptionChangelogVersions

Show all versions

1
13
14

MagicLib 0.8.576 for Minecraft 1.21.0 (fabric)

by hendrix-shen on Jul 14, 2024
Download

MagicLib 0.8 is out

MagicLib 0.8 has been completely refactored, existing MagicLib-dependent mods can still work with the built-in magiclib-legacy-compat, but it is recommended to migrate as soon as possible. MagicLib 0.9 will no longer support the running of these old mods.

Features

  • Support Minecraft 1.20.6, 1.21
  • Multi-platform support, MagicLib 0.8 starts to support Forge, NeoForge experimentally.
  • Rewrite MagicI18n
    • Default language is the system language
    • Servers are localised according to client settings
  • Rewrite Dependency Checking
    • Annotations add more options
    • Friendly Check Failure Tips
  • Event System
  • Introducing TweakerMore style configuration UI and internal implementation

Development

  • Bundle lazydfu to better-dev
  • Bundle smooth-boot to better-dev

Credit

  • TweakerMore (LGPL 3.0 License) by Fallen-Breath
  • Conditional-Mixin (LGPL 3.0 License) by Fallen-Breath
  • Carpet-TIS-Addition (LGPL 3.0 License) by Fallen-Breath
  • Mixin (MIT License) by SpongePowered
  • SmoothBoot (MIT License) by UltimateBoomer
  • LazyDFU (MIT License) by astei
  • mod-fungible (LGPL 3.0 License) by magistermaks

Full Changelog: https://github.com/Hendrix-Shen/MagicLib/compare/0.7-patch.6...0.8


Build Information

  • File name: MagicLib-mc1.21.0-fabric-0.8.576-stable.jar
  • SHA-256: 664de5bb1efac77ebbb4f0ed156f7b3b615bbfb7e998072598f3fad6aeff2ced
  • Built from: https://github.com/Hendrix-Shen/MagicLib/actions/runs/9925635906

MagicLib 0.8.576 for Minecraft 1.21.0 (neoforge)

by hendrix-shen on Jul 14, 2024
Download

MagicLib 0.8 is out

MagicLib 0.8 has been completely refactored, existing MagicLib-dependent mods can still work with the built-in magiclib-legacy-compat, but it is recommended to migrate as soon as possible. MagicLib 0.9 will no longer support the running of these old mods.

Features

  • Support Minecraft 1.20.6, 1.21
  • Multi-platform support, MagicLib 0.8 starts to support Forge, NeoForge experimentally.
  • Rewrite MagicI18n
    • Default language is the system language
    • Servers are localised according to client settings
  • Rewrite Dependency Checking
    • Annotations add more options
    • Friendly Check Failure Tips
  • Event System
  • Introducing TweakerMore style configuration UI and internal implementation

Development

  • Bundle lazydfu to better-dev
  • Bundle smooth-boot to better-dev

Credit

  • TweakerMore (LGPL 3.0 License) by Fallen-Breath
  • Conditional-Mixin (LGPL 3.0 License) by Fallen-Breath
  • Carpet-TIS-Addition (LGPL 3.0 License) by Fallen-Breath
  • Mixin (MIT License) by SpongePowered
  • SmoothBoot (MIT License) by UltimateBoomer
  • LazyDFU (MIT License) by astei
  • mod-fungible (LGPL 3.0 License) by magistermaks

Full Changelog: https://github.com/Hendrix-Shen/MagicLib/compare/0.7-patch.6...0.8


Build Information

  • File name: MagicLib-mc1.21.0-neoforge-0.8.576-stable.jar
  • SHA-256: e9ad6cfcc224a641c08b42394169e9f8b1884a1d77d897b58473798531be9aaf
  • Built from: https://github.com/Hendrix-Shen/MagicLib/actions/runs/9925635906

MagicLib 0.8.576 for Minecraft 1.20.2 (neoforge)

by hendrix-shen on Jul 14, 2024
Download

MagicLib 0.8 is out

MagicLib 0.8 has been completely refactored, existing MagicLib-dependent mods can still work with the built-in magiclib-legacy-compat, but it is recommended to migrate as soon as possible. MagicLib 0.9 will no longer support the running of these old mods.

Features

  • Support Minecraft 1.20.6, 1.21
  • Multi-platform support, MagicLib 0.8 starts to support Forge, NeoForge experimentally.
  • Rewrite MagicI18n
    • Default language is the system language
    • Servers are localised according to client settings
  • Rewrite Dependency Checking
    • Annotations add more options
    • Friendly Check Failure Tips
  • Event System
  • Introducing TweakerMore style configuration UI and internal implementation

Development

  • Bundle lazydfu to better-dev
  • Bundle smooth-boot to better-dev

Credit

  • TweakerMore (LGPL 3.0 License) by Fallen-Breath
  • Conditional-Mixin (LGPL 3.0 License) by Fallen-Breath
  • Carpet-TIS-Addition (LGPL 3.0 License) by Fallen-Breath
  • Mixin (MIT License) by SpongePowered
  • SmoothBoot (MIT License) by UltimateBoomer
  • LazyDFU (MIT License) by astei
  • mod-fungible (LGPL 3.0 License) by magistermaks

Full Changelog: https://github.com/Hendrix-Shen/MagicLib/compare/0.7-patch.6...0.8


Build Information

  • File name: MagicLib-mc1.20.2-neoforge-0.8.576-stable.jar
  • SHA-256: 7adcf32fb8e712d6e371ab1b82f5288b886ef97a7d7f4671c14e44ddc0b559f2
  • Built from: https://github.com/Hendrix-Shen/MagicLib/actions/runs/9925635906

MagicLib 0.8.576 for Minecraft 1.20.1 (fabric)

by hendrix-shen on Jul 14, 2024
Download

MagicLib 0.8 is out

MagicLib 0.8 has been completely refactored, existing MagicLib-dependent mods can still work with the built-in magiclib-legacy-compat, but it is recommended to migrate as soon as possible. MagicLib 0.9 will no longer support the running of these old mods.

Features

  • Support Minecraft 1.20.6, 1.21
  • Multi-platform support, MagicLib 0.8 starts to support Forge, NeoForge experimentally.
  • Rewrite MagicI18n
    • Default language is the system language
    • Servers are localised according to client settings
  • Rewrite Dependency Checking
    • Annotations add more options
    • Friendly Check Failure Tips
  • Event System
  • Introducing TweakerMore style configuration UI and internal implementation

Development

  • Bundle lazydfu to better-dev
  • Bundle smooth-boot to better-dev

Credit

  • TweakerMore (LGPL 3.0 License) by Fallen-Breath
  • Conditional-Mixin (LGPL 3.0 License) by Fallen-Breath
  • Carpet-TIS-Addition (LGPL 3.0 License) by Fallen-Breath
  • Mixin (MIT License) by SpongePowered
  • SmoothBoot (MIT License) by UltimateBoomer
  • LazyDFU (MIT License) by astei
  • mod-fungible (LGPL 3.0 License) by magistermaks

Full Changelog: https://github.com/Hendrix-Shen/MagicLib/compare/0.7-patch.6...0.8


Build Information

  • File name: MagicLib-mc1.20.1-fabric-0.8.576-stable.jar
  • SHA-256: 7d0a5d488b24cdbc450a3ffd69a093c02b031f0f460c5af6f43f62f60466109d
  • Built from: https://github.com/Hendrix-Shen/MagicLib/actions/runs/9925635906

MagicLib 0.8.576 for Minecraft 1.19.4 (forge)

by hendrix-shen on Jul 14, 2024
Download

MagicLib 0.8 is out

MagicLib 0.8 has been completely refactored, existing MagicLib-dependent mods can still work with the built-in magiclib-legacy-compat, but it is recommended to migrate as soon as possible. MagicLib 0.9 will no longer support the running of these old mods.

Features

  • Support Minecraft 1.20.6, 1.21
  • Multi-platform support, MagicLib 0.8 starts to support Forge, NeoForge experimentally.
  • Rewrite MagicI18n
    • Default language is the system language
    • Servers are localised according to client settings
  • Rewrite Dependency Checking
    • Annotations add more options
    • Friendly Check Failure Tips
  • Event System
  • Introducing TweakerMore style configuration UI and internal implementation

Development

  • Bundle lazydfu to better-dev
  • Bundle smooth-boot to better-dev

Credit

  • TweakerMore (LGPL 3.0 License) by Fallen-Breath
  • Conditional-Mixin (LGPL 3.0 License) by Fallen-Breath
  • Carpet-TIS-Addition (LGPL 3.0 License) by Fallen-Breath
  • Mixin (MIT License) by SpongePowered
  • SmoothBoot (MIT License) by UltimateBoomer
  • LazyDFU (MIT License) by astei
  • mod-fungible (LGPL 3.0 License) by magistermaks

Full Changelog: https://github.com/Hendrix-Shen/MagicLib/compare/0.7-patch.6...0.8


Build Information

  • File name: MagicLib-mc1.19.4-forge-0.8.576-stable.jar
  • SHA-256: 5d79f772b0a35796a4238b10c487ea7807effa126a12c5e4c20c5780c39626ca
  • Built from: https://github.com/Hendrix-Shen/MagicLib/actions/runs/9925635906

MagicLib 0.7.398

by hendrix-shen on Dec 14, 2023
Download

Features

  • Support Minecraft 1.20.4

Fixes

  • Prevent MagicI18n from releasing magic before malilib config init (#51)

What's Changed

  • Update dependency gradle to v8.4 by @renovate in https://github.com/Hendrix-Shen/MagicLib/pull/49
  • Update plugin org.ajoberstar.grgit to v5.2.1 by @renovate in https://github.com/Hendrix-Shen/MagicLib/pull/50
  • Update dependency gradle to v8.5 by @renovate in https://github.com/Hendrix-Shen/MagicLib/pull/52
  • Update actions/setup-java action to v4 by @renovate in https://github.com/Hendrix-Shen/MagicLib/pull/53

Full Changelog: https://github.com/Hendrix-Shen/MagicLib/compare/0.7-patch.5...0.7-patch.6

MagicLib 0.7.387

by hendrix-shen on Sep 21, 2023
Download

Features

  • Support Minecraft 1.20.2

Fixes

  • Fix MagicConfig I18n doesn't work

Development

  • MagicLib is now available on JitPack

MagicLib 0.7.364

by hendrix-shen on Aug 3, 2023
Download

As you know the first snapshot of Minecraft 1.20.2 has been released. So pushing a staged cumulative update, MagicLib may delay feature updates for the next while.

Features

  • Add Traditional Chinese translation (By @Blackrowtw)

Fixes

  • Fix RenderEvent on fabulous quality (Related to plusls/MasaGadget#96)
  • Fix Text Render (MC 1.19.4)

Development

  • Deprecated TranslatableConfig now IMagicConfigBase

MagicLib 0.7.346

by hendrix-shen on Jul 3, 2023
Download

Note: Same as 0.7.345 only for fixing CurseForge files.

Full Changelog: https://github.com/Hendrix-Shen/MagicLib/compare/0.7-patch.2...0.7-patch.3

0.7.345

by hendrix-shen on Jul 2, 2023
Download

Features

  • Add Minecraft 1.20.1 support (#34)
  • Minecraft version check on wrapper (Ease #7)

Development

  • Publish to MavenCentral
    • No logger upload artifacts to Nyan Maven
    • Use top.hendrixshen.magiclib as groupId
  • Fix IMBlockerFabric dependency
  • Fix ProductionClient dependencies
  • Disable Gradle parallel

Full Changelog: https://github.com/Hendrix-Shen/MagicLib/compare/dev/0.7.291...0.7-patch.2

0.7.336

by hendrix-shen on Jun 11, 2023
Download

Features

  • Add Minecraft 1.20 support
  • Add RenderEvent API
  • Add Renderer Impl
  • Compat Malilib 0.15.4

Fixes

  • Fix unexpected loading of client classes (#17)
  • Fix error handling on malformed farbric.mod.json (#19)

Full Changelog: https://github.com/Hendrix-Shen/MagicLib/compare/dev/0.7.247...0.7-patch.1

0.7.293

by hendrix-shen on Mar 23, 2023
Download

Features

  • Add Minecraft 1.19.4 support.

Important

  • Package structure refactoring, so mods that depent on older versions of MagicLib may not work properly.

Full Changelog: https://github.com/Hendrix-Shen/MagicLib/compare/dev/0.6.229...dev/0.7

0.6.229+f260912

by hendrix-shen on Mar 11, 2023
Download

This version mainly re-adds support for Minecraft 1.19.2.

0.6.212+a47eb26

by hendrix-shen on Jan 31, 2023
Download

Hi! It's been a long time, and after much hard work and experimentation, we have completed MagicLib 0.6!

What we do?

  • As Carpet extension developers may have noticed, Carpet has introduced a new API to manage rules, and the legacy API will soon be removed. This is not very friendly to Carpet extension authors who maintain Carpet modules for multiple Minecraft versions at the same time. So we wrapped this API to allow developers to work on different versions of Carpet with the same code. The condition in @Rule is implemented using MagicLib's dependency checking feature.

Future prospects

  • Enhanced I18n server-side features.
  • Stand-alone compatible module (only conceived).
  • Unfortunately, there is currently no documentation for the Compat API, which we will (probably) explain in a later development

Full Changelog: https://github.com/Hendrix-Shen/MagicLib/compare/dev/0.5.37...dev/0.6.201

0.5.37

by hendrix-shen on Aug 5, 2022
Download

Switch Minecraft version to 1.19.2.

0.5.34

by hendrix-shen on Aug 4, 2022
Download

Important update

It is highly recommended that you update this version as the last update we accidentally broke the compatibility api and this has resulted in some dependencies on this library not being available.

0.5.33

by hendrix-shen on Jul 29, 2022
Download

This is a small update. Mainly for developers and switch Minecraft version to 1.19.1.

Patch

  • Fix crash on server (MC 1.16)

Misc

The following is for developers only:

  • Update all dependencies to latest version. Include:
    • FabricAPI (MC 1.18-1.19)
    • FabricLoader (MC 1.14-1.19)
    • IMBlockerFabric (MC 1.14-1.19)
    • InGameAccountSwitcher (MC 1.14-1.19)
    • LazyDFU (MC 1.19)
    • ModMenu (MC 1.16-1.19)
  • Add SmoothBoot to runtime environment.

0.5.32

by hendrix-shen on Jun 28, 2022
Download

Patch

  • More I18n api & Javadoc

0.5.31

by hendrix-shen on Jun 11, 2022
Download

Hi! It's been a long time, and after much hard work and experimentation, we have completed MagicLib 0.5!

What we do?

  • We have written compatibility APIs for balancing the differences between versions. For developers maintaining multiple MC versions of mods at the same time, it is possible to ignore Mojang's changes to MC to a certain extent. You don't have to care about what Mojang has done, using the API you will easily be able to use the same code between MC versions.
  • We have reimplemented I18n independent of MC and can set the list of alternate languages for MagicLib I18n. Mojang uses some tricks with I18n text to make some features of String.format unavailable, which is usually annoying.
  • Compatible with QuiltLoader.

Future prospects

  • Enhanced I18n server-side features.
  • Stand-alone compatible module (only conceived).
  • Unfortunately, there is currently no documentation for the Compat API, which we will (probably) explain in a later development

Note:

  • A template for module development using MagicLib is available: https://github.com/plusls/magic-mod-template

Credit

  • @plusls

0.3.26

by hendrix-shen on Apr 16, 2022
Download

Hey, we're proud to say that after a difficult development process, the first, more finished, release of MagicLib is out!

What we do?

  • We have written a very useful configuration management module for Malilib where we will use basic data types with Java annotations to generate configuration lists wherever possible. Also, for configuration files we have included a configuration versioning system which will help you to quickly write your own custom migration solution in the event of a major change to the configuration file structure.
  • We have ported some features from a higher version of Malilib to make it easier to use the same features when using Malilib adapted to a lower version of Minecraft
  • We have added a complete dependency checking system to verify dependency availability by means of expressions and even custom predicates, who can be applied in a variety of scenarios, e.g.
    • MagicLibMixinPlugin provides additional dependency checking for the module, which makes up for some shortcomings of Fabric Loader, for example by setting different dependencies for the client side and the server side.
    • Dependency checking can also be applied to Mixin, and Mixin will only be applied if the conditions are met.
    • Dependency checking can also be applied to configuration management so that the configuration item is only displayed if the conditions are met.
    • Further features may be included in future developments
  • Multi-version compatibility, yes, we use a number of means to be compatible with all versions of Minecraft running on Fabric Loader (1.14+). How is this done? Magic :(
  • Additional I18n implementation, but this is a temporary solution. As you probably know, the Mojang implementation of I18n has a number of flaws in formatting strings, so we will be reimplementing an I18n module to facilitate better use of string formatting. We will be working on the I18n module in the next release, so look out for that!

Future prospects

  • Reconfiguration of the I18n module.
  • Compatible with several versions of TranslatableText and LiteralText (api).
  • Write a usable tutorial to help developers understand how to use MagicLib.

Credit

  • @plusls
1
13
14

Modrinth is open source.

main@016c3d7

© Rinth, Inc.

Company

TermsPrivacyRulesCareers

Resources

SupportBlogDocsStatus

Interact

Discord X (Twitter) Mastodon Crowdin
Get Modrinth App Settings
NOT AN OFFICIAL MINECRAFT SERVICE. NOT APPROVED BY OR ASSOCIATED WITH MOJANG OR MICROSOFT.