JMOD - The JavaScript MOD Loader
![]()
Introduction
JMOD allows you to create simple mods without the need to set up a Java development environment and compile code with every change. While Java knowledge isn't required to work with JMOD, you'll need basic JavaScript skills — and we're really talking about the fundamentals.
Main Features
JMOD was originally designed as a tool for building modifications within modpacks. The system offers numerous tools for modifying existing game content: tool materials, block hardness, crafting recipes, and chest loot. You can instantly add new items and blocks, often with just a single line of code. All created content will belong to your own mod, not to JMOD or other modifications.
If you want to add new tools, metals, ingots, and ores with world generation to the game — JMOD is perfect for these tasks.
Limitations
For creating complex mods such as machinery (planned for future versions), custom interfaces, or deep changes to game mechanics, JMOD is not recommended. While technically possible, it would require working with the Java API of MinecraftForge and Minecraft itself, which eliminates JMOD's main advantage — ease of use — while maintaining JavaScript's performance limitations compared to Java. For such tasks, Java development is better suited.
Future versions plan to support "plugins" — compiled Java classes that can be used in your mods.
Getting Started
Complete API documentation will be available in the wiki soon. You can review usage examples in the JMODS source codes for Survival Industry. Detailed documentation provided by @reteo is also available.
JMOD files come in two types: as folders or archives. Both must have the ".jmod" extension and be placed in the mods folder. The "mod.json" file is mandatory as it contains basic mod information and scripts to execute. Like regular mods, JMOD files can include their own textures and language files.
Versions and Compatibility
Currently, a version for Minecraft 1.8.x is not planned, but with sufficient demand, work on it may begin.
JMOD does not support Java 6 and 7 since the used scripting engine (Nashorn) is part of Java 8 JRE.
Important: This is an alpha version, so the API may change, and errors are possible. It's recommended to create world backups.
Licensing
Permission is granted to use JMOD in any modpacks, both private and public. Mods you create using JMOD are your property, and you can distribute them under any chosen license. Using open licenses such as MIT or LGPL is recommended.
JMOD is distributed under the MIT license, which provides broad opportunities for using, modifying, and distributing the software.
Development
Anyone can create a fork of JMOD on GitHub, but there's no guarantee that pull requests will be accepted. The project has a clear development direction, and until feature freeze is announced, direct change proposals will likely not be accepted.
Acknowledgments
Special thanks to @reteo and the entire Survival Industry team, without whom this mod would never have appeared — both for the idea and motivation for development, and for providing an excellent testing ground.
We also express gratitude to experienced mod developers who share their source codes. This is the author's first serious mod, and without the opportunity to study others' work, it wouldn't have happened. Special thanks to @Reika for well-structured and creative mods, as well as valuable modding knowledge gained from studying his code.