Description
EriAPI
The all-in-one modding framework for Minecraft Forge 1.12.2
Documentation (EN) · Documentation (FR) · Issues & Ideas
What is EriAPI?
EriAPI is a comprehensive library mod for Minecraft Forge 1.12.2 that eliminates boilerplate code and provides a clean, fluent API for every common modding task. Instead of wrestling with Forge's verbose internals, you write expressive one-liners and let EriAPI handle the rest.
Whether you're building a simple utility mod or a massive modpack core, EriAPI gives you production-ready tools out of the box — no copy-pasting, no reinventing the wheel.
Modules
GUI Framework
A complete UI toolkit designed in 1920x1080 design pixels with automatic scaling to any screen resolution. Build rich interfaces with 30+ ready-to-use components: buttons, text fields, sliders, checkboxes, radio buttons, scroll panels, tab views, charts, color pickers, context menus, tooltips, toast notifications, and more. Every component supports animations, sound feedback, and the fluent API pattern.
Item & Block Builder
Create items, blocks, and recipes with a fluent builder — no need to manually register classes, handle events, or write JSON models. Supports base items, food, tools (pickaxe, axe, sword, shovel, hoe), armor sets, and blocks with custom drops, tile entities, and interaction callbacks.
Data & Storage
Persistent data storage using simple annotated POJOs. Declare a class with @EriData, mark fields with @Sync for automatic client synchronization, and the framework handles NBT serialization, capability attachment, death persistence, dimension changes, and login sync — all transparently.
Task Scheduler
Schedule delayed tasks, repeating tasks, sequential chains, and async operations without touching tick events. Built-in thread pool for off-thread work with safe callbacks to the main thread.
Chat Builder
Build rich chat messages with colors, styles, click events, hover tooltips, and URLs using a fluent API. Includes a paginator for displaying long lists with clickable navigation buttons.
Capability System
Forge capabilities made simple. Annotate a POJO with @EriCapability, specify the target (player, entity, item, or tile entity), and the framework handles registration, attachment, NBT persistence, death copy, and client synchronization automatically.
Event System
Subscribe to any Forge event in a single line. Add filters, set priority, make it fire once, or auto-expire after a delay — all without creating dedicated event handler classes.
Keybinding Manager
Register keyboard shortcuts with a fluent API: simple keys, multi-key combos (Ctrl+Shift+X), double-tap detection, and hold callbacks. Context-aware activation (in-game only, GUI only, or always) with automatic conflict detection.
Network Layer
Client-server communication for GUI interactions. Send actions, sync data, and open GUIs remotely — all through a centralized network handler with automatic packet registration.
Security Framework
Server-side anti-duplication and exploit prevention toolkit. Protect any container GUI from item duplication exploits with zero-trust validation. Includes GuiRateLimiter (per-player action throttling), ItemIntegrityValidator (snapshot/validate/rollback item counts), ContainerLock (synchronized concurrent access), and DupeAlertManager (real-time admin alerts). Designed for high-player-count servers (500-1000 players).
For Developers
EriAPI is a library mod — it does nothing on its own. Add it as a dependency to your mod and start using any of its modules. All APIs follow the same fluent pattern, so once you learn one, you know them all.
Quick Start
Add EriAPI to your build.gradle:
dependencies {
compile files('libs/eriapi-1.0-SNAPSHOT-1.12.2.jar')
}
Declare the dependency in your @Mod annotation:
@Mod(modid = "yourmod", dependencies = "required-after:eriapi")
That's it. Every module is immediately available.
Full Documentation
- English: https://eriapi.netlify.app/en/
- French: https://eriapi.netlify.app/fr/
EriAPI
Le framework tout-en-un pour le modding Minecraft Forge 1.12.2
Documentation (FR) · Documentation (EN) · Issues & Ideas
Qu'est-ce qu'EriAPI ?
EriAPI est un mod librairie complet pour Minecraft Forge 1.12.2 qui supprime le code repetitif et fournit une API fluent et propre pour chaque tache courante du modding. Au lieu de se battre avec les internals verbeux de Forge, vous ecrivez des one-liners expressifs et EriAPI gere le reste.
Que vous construisiez un petit mod utilitaire ou le coeur d'un modpack massif, EriAPI vous donne des outils prets pour la production — sans copier-coller, sans reinventer la roue.
Modules
GUI Framework
Un toolkit UI complet concu en 1920x1080 pixels de design avec mise a l'echelle automatique vers n'importe quelle resolution. Construisez des interfaces riches avec plus de 30 composants prets a l'emploi : boutons, champs texte, sliders, checkboxes, boutons radio, panneaux scrollables, onglets, graphiques, selecteur de couleur, menus contextuels, tooltips, notifications toast, et bien plus. Chaque composant supporte les animations, le feedback sonore et le pattern fluent API.
Item & Block Builder
Creez des items, blocks et recettes avec un builder fluent — pas besoin d'enregistrer manuellement des classes, de gerer des events ou d'ecrire des JSON models. Supporte les items de base, la nourriture, les outils (pioche, hache, epee, pelle, houe), les armures completes, et les blocks avec drops custom, tile entities et callbacks d'interaction.
Data & Storage
Stockage de donnees persistantes via de simples POJOs annotes. Declarez une classe avec @EriData, marquez les champs avec @Sync pour la synchronisation client automatique, et le framework gere la serialisation NBT, l'attachment de capability, la persistence a la mort, les changements de dimension et la sync au login — le tout de maniere transparente.
Task Scheduler
Planifiez des taches differees, repetitives, des chaines sequentielles et des operations asynchrones sans toucher aux tick events. Thread pool integre pour le travail hors du thread principal avec callbacks securises vers le main thread.
Chat Builder
Construisez des messages chat riches avec couleurs, styles, events au clic, tooltips au survol et URLs via une API fluent. Inclut un paginateur pour afficher de longues listes avec des boutons de navigation cliquables.
Systeme de Capabilities
Les capabilities Forge simplifiees. Annotez un POJO avec @EriCapability, specifiez la cible (joueur, entite, item ou tile entity), et le framework gere l'enregistrement, l'attachment, la persistence NBT, la copie a la mort et la synchronisation client automatiquement.
Systeme d'Events
Ecoutez n'importe quel event Forge en une seule ligne. Ajoutez des filtres, definissez la priorite, faites-le se declencher une seule fois ou expirez-le automatiquement apres un delai — le tout sans creer de classes handler dediees.
Keybinding Manager
Enregistrez des raccourcis clavier avec une API fluent : touches simples, combos multi-touches (Ctrl+Shift+X), detection de double-tap et callbacks de maintien. Activation contextuelle (en jeu uniquement, dans un GUI uniquement, ou toujours) avec detection automatique des conflits.
Couche Reseau
Communication client-serveur pour les interactions GUI. Envoyez des actions, synchronisez des donnees et ouvrez des GUIs a distance — le tout via un gestionnaire reseau centralise avec enregistrement automatique des packets.
Framework de Securite
Toolkit anti-duplication et prevention d'exploits cote serveur. Protegez n'importe quel GUI conteneur contre les exploits de duplication d'items avec une validation zero-trust. Inclut GuiRateLimiter (limitation d'actions par joueur), ItemIntegrityValidator (snapshot/validation/rollback du nombre d'items), ContainerLock (acces concurrent synchronise), et DupeAlertManager (alertes admin en temps reel). Concu pour les serveurs a forte affluence (500-1000 joueurs).
Pour les Developpeurs
EriAPI est un mod librairie — il ne fait rien tout seul. Ajoutez-le comme dependance a votre mod et commencez a utiliser n'importe lequel de ses modules. Toutes les APIs suivent le meme pattern fluent, donc une fois que vous en maitrisez une, vous les connaissez toutes.
Demarrage Rapide
Ajoutez EriAPI a votre build.gradle :
dependencies {
compile files('libs/eriapi-1.0-SNAPSHOT-1.12.2.jar')
}
Declarez la dependance dans votre annotation @Mod :
@Mod(modid = "votremod", dependencies = "required-after:eriapi")
C'est tout. Chaque module est immediatement disponible.
Documentation Complete
- Francais : https://eriapi.netlify.app/fr/
- English : https://eriapi.netlify.app/en/


