{"id":15015234,"url":"https://github.com/rubixdev/inventorio","last_synced_at":"2025-09-23T08:32:35.888Z","repository":{"id":37780099,"uuid":"346719953","full_name":"RubixDev/Inventorio","owner":"RubixDev","description":"Inventorio - an inventory enhancement mod for Minecraft (Fabric / (Neo)Forge)","archived":false,"fork":false,"pushed_at":"2024-07-12T22:50:50.000Z","size":1143,"stargazers_count":58,"open_issues_count":185,"forks_count":22,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-01-14T21:14:08.096Z","etag":null,"topics":["fabric","forge","minecraft","minecraft-fabric","minecraft-forge","minecraft-mod","mod"],"latest_commit_sha":null,"homepage":"https://modrinth.com/mod/inventorio","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RubixDev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"ko_fi":"rubixdev"}},"created_at":"2021-03-11T13:57:55.000Z","updated_at":"2024-12-04T14:33:39.000Z","dependencies_parsed_at":"2024-02-15T09:30:31.112Z","dependency_job_id":"909e1179-8e10-49be-9429-0573166429a7","html_url":"https://github.com/RubixDev/Inventorio","commit_stats":{"total_commits":130,"total_committers":8,"mean_commits":16.25,"dds":"0.46923076923076923","last_synced_commit":"dd399d57eb92868138b054ec20cc82bdb1b44438"},"previous_names":["rubixdev/inventorio"],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RubixDev%2FInventorio","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RubixDev%2FInventorio/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RubixDev%2FInventorio/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RubixDev%2FInventorio/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RubixDev","download_url":"https://codeload.github.com/RubixDev/Inventorio/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":233960036,"owners_count":18757410,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["fabric","forge","minecraft","minecraft-fabric","minecraft-forge","minecraft-mod","mod"],"created_at":"2024-09-24T19:46:39.234Z","updated_at":"2025-09-23T08:32:30.503Z","avatar_url":"https://github.com/RubixDev.png","language":"Kotlin","readme":"# Inventorio - An inventory enhancement mod for Minecraft (Forge / Fabric)\n\n[![GitHub Downloads](https://img.shields.io/github/downloads/RubixDev/Inventorio/total?style=for-the-badge\u0026logo=github\u0026label=GitHub%20Downloads\u0026color=%23753fc7)](https://github.com/RubixDev/Inventorio/releases)\n[![Modrinth Downloads](https://img.shields.io/modrinth/dt/LcafSQPm?style=for-the-badge\u0026logo=modrinth\u0026label=Modrinth%20Downloads\u0026color=%2300af5c)](https://modrinth.com/mod/inventorio)\n[![CurseForge Downloads Fabric](https://img.shields.io/curseforge/dt/491073?style=for-the-badge\u0026logo=curseforge\u0026label=CurseForge%20Downloads%20(Fabric)\u0026color=%23f16436)](https://www.curseforge.com/minecraft/mc-mods/inventorio)\n[![CurseForge Downloads Forge](https://img.shields.io/curseforge/dt/497122?style=for-the-badge\u0026logo=curseforge\u0026label=CurseForge%20Downloads%20(Forge)\u0026color=%23f16436)](https://www.curseforge.com/minecraft/mc-mods/inventorio-forge)\n\n## Showcase Video\n\n[![Video Demonstration](https://img.youtube.com/vi/ZXQb49LaC30/maxresdefault.jpg)](https://youtu.be/ZXQb49LaC30)\n\n## About\n\nThis is my vision of the Inventory Update for Minecraft. Of\n[features](#Features) I believe are in line with Mojang's vision and could be\npotentially added to the game.\n\nAvailable for both Fabric and (Neo)Forge.\n\n## Installation\n\nGrab the jar file from the\n[Release page](https://github.com/Lizard-Of-Oz/Inventorio/releases/).\n\nYou can also find this mod on [Modrinth](https://modrinth.com/mod/inventorio) or\nCurseForge ([Fabric](https://www.curseforge.com/minecraft/mc-mods/inventorio),\n[Forge](https://www.curseforge.com/minecraft/mc-mods/inventorio-forge))\n\nCopy the jar file into `%root_folder%/mods/` alongside other mods.\n\n### Dependencies\n\nDependencies for Fabric:\n\n- [Fabric API](https://modrinth.com/mod/fabric-api)\n- [Fabric Language Kotlin](https://modrinth.com/mod/fabric-language-kotlin)\n- [Cloth Config](https://modrinth.com/mod/cloth-config)\n\nDependencies for Forge:\n\n- [Kotlin for Forge](https://modrinth.com/mod/kotlin-for-forge)\n- [Cloth Config](https://modrinth.com/mod/cloth-config)\n\n## Features\n\n![Features](https://user-images.githubusercontent.com/701551/174822000-afce35b6-b6e2-4580-b428-715a764b64a3.png)\n\n#### Toolbelt\n\nInstead of taking space in the Hotbar, tools are now stored in their own place.\nWhen you mine a block, a correct tool gets passively applied from the said\nToolbelt.\n\n- Mending will mend tools in the Toolbelt before going into player's XP bar\n- Axe will be used as a melee weapon in the sword slot is empty\n- Hoe Toolbelt slot accepts shears. Sword Toolbelt slot accepts Trident.\n- Toolbelt slots accept modded tools as long as they inherit from vanilla tool\n  classes.\n\n#### Utility Belt\n\nAn Offhand replacement with a dedicated hotbar of 4 slots that can be scrolled\nthrough independently, and which skips the empty slots. You can use the selected\nUtility independently, which allows you to akimbo two types of blocks or two\ntypes of usable items.\n\n#### Deep Pockets Enchantment\n\nEach level of this enchantment adds an additional row to your inventory, up to 3\nat max level. In addition, the first level adds 4 extra slots to the Utility\nBelt (from 4 to 8)\n\nThe Enchanted Book can be crafted from 2 shulker shells and a book, as well as\ntraded from villagers or found in treasure chests.\n\n![Crafting Recipe: 2 Shulker Shells + Book](https://user-images.githubusercontent.com/701551/197444061-ede483b9-eba4-4f85-901e-f3215f92b792.png)\n\n#### Increased Ender Chest Capacity\n\nThe capacity of the Ender Chest has been doubled. This can be disabled in the\nserver-wide config, but you need to distribute the said config to all players if\nyou edit it.\n\n#### Infinity Bow Requires No Arrow\n\nThis mod fixes a Vanilla bug when you need an arrow to use the Infinity Bow.\n\n#### Totems of Undying activate from the Utility Belt\n\nInstead of being permanently stuck in the offhand, it will go off from any of 4\n(8 with Deep Pockets) Utility Belt slots.\n\n### Player Settings\n\n#### Segmented Hotbar\n\nAccessing slots after 5 with a keyboard might be cumbersome because the keys are\njust too far away. This feature makes the first keystroke select a section, and\nthe second keystroke will select an item inside that section.\n\nThere's a \"Visual Only\" option that keeps the default selection schema.\n\n#### Firework Rocket Boost Button\n\nA dedicated button to fire a boost rocket directly from your inventory while\nflying. Can be co-bound to Jump.\n\n#### Trident Loyalty Check\n\nThis option prevents you from throwing a Trident without Loyalty.\n\n#### \"Use Item\" Applies To Offhand\n\nThe original idea was to bind each hand to its own dedicated button, but some\npeople found it confusing, and this option restores the vanilla behavior of\nvanilla \"Use Item\", while \"Use Utility\" applies only to the Utility Belt /\nOffhand.\n\n#### Skip Empty Utility Slots\n\nBy default, scrolling and displaying the Utility Belt skips the empty slots, but\nyou can set this behavior to false. There's also a keybind (not bound by\ndefault) that allows to scroll to the first empty Utility Belt slot.\n\n#### Rebind Scroll Wheel to the Utility Belt\n\nYou can rebind the Scroll Wheel to scroll through the Utility Belt, while using\nthe number keys to chose from the Hotbar slots.\n\n#### Dark Inventorio Player UI\n\nCompatibility with dark theme mods and resource packs.\n\n#### Swapped Hands\n\nThis option allows assigning the vanilla Hotbar to your Offhand, and the Utility\nBelt to your Main Hand.\n\n![image](https://user-images.githubusercontent.com/701551/120894901-e828dd00-c644-11eb-86aa-6935ad71002a.png)\n\n## Global Settings\n\nTo improve mod compatibility, some features can be disabled on a game-wide level\nfor all players.\n\nGlobal settings can be accessed by a keybind (only in a single player world) or\ndirectly at `%root_folder%/config/inventorio_shared.json`.\n\nJoining a server (either dedicated or hosted from another client) with\nmismatching global settings will prompt a request to sync your settings and\nrestart the game, but sharing the config beforehand is recommended.\n\n- `ExpandedEnderChest (default: true)` - when set to false, disables mixins\n  responsible for increasing Ender Chest capacity.\n\n- `InfinityBowNeedsNoArrow (default: true)` - when set to false, disables mixins\n  responsible for Infinity Bow requiring no arrows.\n\n- `TotemFromUtilityBelt (default: true)` - when set to false, disables mixins\n  responsible for Totem of Undying going off from any Utility Belt slot.\n\n- `AllowSwappedHands (default: true)` - when set to false, removes the option to\n  [Swap Hands](#swapped-hands).\n\n- `ToolBeltMode (default: ENABLED)` - Allows to disable the Toolbelt a)\n  completely b) allow only the Toolbelt slots added by other mods\n\n- `UtilityBeltShortDefaultSize (default: true)` - By default, the Deep Pockets\n  Enchantment increases the Utility Belt capacity from 4 to 8. When set to\n  false, the full capacity is given unconditionally.\n\n- `DeepPocketsBookCraft (default: true)` - Can a Deep Pockets Book be crafted\n\n- `DeepPocketsInTrades (default: true)` - Can a Deep Pockets Book be obtained in\n  a villager trade\n\n- `DeepPocketsInRandomSelection (default: true)` - Can a Deep Pockets Book be\n  obtained in random selection (Enchanting Table and mob loot)\n\n## Use in modpacks and with other mods\n\nYou can include this mod in a modpack or as a dependency for your own mod.\n\nI just ask you to respect my work and include it in a way that would count as a\ndownload of the mod on Modrinth or CurseForge and their reward programs.\n\n- For Modpacks, don't embed the jar into the modpack but link to the mod (as\n  should be the default behavior on both Modrinth and CurseForge).\n- For Mods, don't embed the mod's jar inside your mod, but mark it as a\n  dependency.\n\nIf you want to use this mode as a dependency, I recommend using the\n[Modrinth maven](https://support.modrinth.com/en/articles/8801191-modrinth-maven).\n\nBe advised that you need to manually keep track of the latest version available.\n\n```groovy\nrepositories {\n    exclusiveContent {\n        forRepository {\n            maven {\n                name = \"Modrinth\"\n                url = \"https://api.modrinth.com/maven\"\n            }\n        }\n        filter {\n            includeGroup \"maven.modrinth\"\n        }\n    }\n}\n\ndependencies {\n    modCompileOnly \"maven.modrinth:inventorio:1.9.3-1.20.4,fabric\"\n}\n```\n\n### Addon Slots, Toolbelt \u0026 Item Tags\n\n`InventorioAPI` allows your mod to add custom Toolbelt slots and add custom\nallowing and disallowing tags and conditions to toolbelt slots, including\nexisting ones.\n\nNote: when working with the Toolbelt, please consider that its size may vary\ndepending on the mods and settings installed.\\\nDon't assume any particular size of the Toolbelt or the slot order across\nmultiple play sessions. ToolBelt size is the same for all players within the\nsame play session.\\\nSlot indices of the Deep Pockets and the Utility Belt are persistent.\n\nPlease use `InventorioAPI#findFittingToolBeltStack` to find a Toolbelt slot that\ncan accept an item and don't assume any persistent index.\n\n\u003cbr/\u003e\n\nBy default, any tool inheriting its Java class from a vanilla tool (e.g.\n`PickaxeItem.java`) will be accepted by a corresponding slot.\n\nAny tool with an [item tag](https://fabricmc.net/wiki/tutorial:tags)\n`inventorio:%item_type%` will be accepted by a corresponding slot.\n\nYou can blacklist a tool from the Toolbelt slot by adding giving it a tag\n`inventorio:%item_type%_blacklist`.\n\nIn Forge, a slot accepts any item with a corresponding\n[ToolType](https://mcforge.readthedocs.io/en/latest/items/items/#basic-items).\n\nIn Fabric, `fabric:%item_type%` item tag is accepted by a corresponding slot.\n\nAny custom filters and tags can be added via `InventorioAPI`\n\nNote: `%item_type%` is always spelled in plural. Available item types:\n`pickaxes`, `swords`, `axes`, `shovels`, `hoes`.\n\nNote: Please ignore `InventorioModIntegration` and `ModIntegration` - they're\nintended for Inventorio to integrate with other mods, **not** for other mods to\nintegrate with Inventorio.\n\n## Contributing\n\nPull Requests for bug fixes and new features are always welcome. As this project\nuses a somewhat unconventional setup, here is a short overview of the Gradle\nmodules at the time of writing this and how they are linked by the preprocessor:\n\n![Project Graph](./assets/Inventorio%20Gradle%20Modules.svg?raw=true)\n\nCode and resources that are common both across Minecraft versions and mod\nloaders should go in [`./src/main/`](./src/main/) (this is the `1.20.4-common`\nmodule). Generally only mixins are written in Java, the rest uses Kotlin.\nPreprocessor comments can be used to restrict small sections of code to certain\nMinecraft versions or mod loaders. For example:\n\n```kotlin\n//#if MC \u003e= 12002\nval isGlass = block.block is StainedGlassBlock || block.isOf(Blocks.GLASS)\n//#else\n//$$ val isGlass = block.block is AbstractGlassBlock\n//#endif\n```\n\nor\n\n```kotlin\n//#if FABRIC\n//$$ const val platform = \"Fabric\"\n//#elseif FORGE\n//$$ const val platform = \"Forge\"\n//#elseif NEOFORGE\n//$$ const val platform = \"NeoForge\"\n//#else\n@JvmField\nval platform = throw IllegalStateException(\"unknown platform\")\n//#endif\n```\n\nAny code and resources that are mod loader specific should go in the latest\nversion for that loader. They will also be included for all previous versions\nautomatically (or rather for all linked modules as seen in the graph above). For\nexample, Fabric specific files go in\n[`./versions/1.20.4-fabric/src/main/`](./versions/1.20.4-fabric/src/main/) and\nafter running the `preprocessCode` Gradle task the `1.20.2-fabric` and\n`1.20.1-fabric` modules will also include those files.\n","funding_links":["https://ko-fi.com/rubixdev"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frubixdev%2Finventorio","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frubixdev%2Finventorio","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frubixdev%2Finventorio/lists"}