Language

Inventory Tabs

Inventory Tabs

Modrinth

Allows swapping to other in-world screens (blocks, entities, etc) via tabs. A fourth-generation rewrite of CakeWhip's InventoryTabs.

162.3k downloads 490 followers updated 2mo ago
latest v1.4.4+1.21 Modrinth
Fabric Forge Neoforge Quilt 1.18.2 – 1.21.1 Game-mechanicsStorageUtility
screenshot
Tabs to swap between nearby screens like chests, crafting stations, and even entities.
A fourth-generation rewrite of Inventory Tabs by CakeWhip, as continued by Andrew6rant.
Requires Connector and FFAPI on forge. For creative mode, try Sidekick!

Inventory Tabs is a client-side mod that displays tabs on screens, each representing nearby blocks and entities.

Tap tab to cycle forward screens, shift+tab to cycle back, or just click around!

Features

  • Swap between crafting stations, storage, and your inventory without leaving their screens.
  • Works out of the box with many modded blocks - with configuration in case anything goes wrong.
  • Storage tabs can be labelled using signs, item frames, or (w/ server) anvil-renaming for organisation.
  • Stacks held on your cursor carry over to the next screen as long as your inventory isn't full.
Shulker Box Symphony
  • Container screens are realigned with other screens, instead of being 1 pixel lower.
  • Fits on-screen with EMI, even on very high GUI scales - Use Left (Compressed) effects.
EMI VGA Preview

Anti-Cheat & Fairness

Inventory Tabs offers no guarantees or defence against server moderation or anti-cheat - tabs provide an unfair advantage, and look outwardly suspicious to onlookers in multiplayer.

Notably, the mod allows some usually impossible actions for the sake of convenience, e.g.

  • The full player inventory can be accessed while riding a horse or chest boat.
  • Sneak-interact inventories can be accessed without dismounting from a vehicle.

Modpack Configuration

Inventory Tabs 4 is designed from the ground up to be friendlier to modpacks.

It's configured via config/inventory_tabs.toml, which includes comments providing extra context - like what each tab provider does.

By default, helpful information for setting up the mod for your modpack is logged when loading into a world. Toggle configLogging to disable this.

If tabs are appearing on a screen they don't fit well with, the screen can be blacklisted:

[screenOverrides]
	"fwaystones:waystone" = false

If tabs are being made for an inappropriate block, you can manually disable their tab provider:

[blockProviderOverrides]
	"cool_mod:incompatible_block" = ""
	"really_cool_mod:*" = ""

Or manually override it to a relevant one:

[blockProviderOverrides]
	"#cool_mod:crafting_stations" = "inventory_tabs:block_unique"
	"cool_mod:single_chest" = "inventory_tabs:block_simple"
	"cool_mod:*_cabinet" = "inventory_tabs:block_simple_storage"
	"cool_mod:doubleable_chest" = "inventory_tabs:block_chest"

Make sure you test your configuration! These options are not intended to be crash-proof.

Overrides also work for entities and items, via [entityProviderOverrides] and [itemProviderOverrides] respectively.

If too many inappropriate blocks are being matched, you may want to disable the default matching logic for a provider entirely:

[registryProviderDefaults]
	"inventory_tabs:block_simple" = false

The block_simple provider uses a blacklist instead of a whitelist, so it generates a lot of false-positive tabs. It's enabled by default to help with finding good/bad tabs.

For a full-pack example, check out the config in Tinkerer's Quilt Modded.


Mod Architecture

Each visible tab on the screen is a Tab, which is responsible for rendering itself, knowing how to be opened, and knowing when it should be removed from the list of tabs (e.g. when no longer in range).

These tabs are held by the Tab Manager, which is effectively the "Tab Screen". It adds onto regular screen methods to do its own rendering, ticking, and mouse click handling. It's also responsible for checking if any new tabs should be added.

Tabs are added via registered Tab Providers. Basic providers like Vehicle Inventory check simple conditions and add a special tab. The more advanced Registry Providers are designed to be assigned a specific set of blocks, entity types, or items that they're responsible for providing tabs for - which is frozen at reload time - and then searching for those around the player every tick. Using these generics, simpler concrete providers are made (Ender Chests, Unique Block.)

Addons

repositories {
	maven { url "https://repo.sleeping.town/" }
}
dependencies {
   modImplementation "folk.sisby:inventory-tabs:1.2.0"
}

Addons for Inventory Tabs 4 can add new tab types and tab providers, and add advanced matching logic to current providers, provide custom tab layouts for their screens (including inverted tabs), and signal when specific tabs should be marked as open.

For a practical example, check out Portable Crafting!


Afterword

All mods are built on the work of many others - We're the fourth set of maintainers of this mod!

This version is a partial rewrite, following the work of CakeWhip, LiamMCW, and Andrew6rant.

This mod is included in Tinkerer's Quilt - our modpack about rediscovering vanilla.

We're open to better ways to implement our mods. If you see something odd and have an idea, let us know!


Tinkerer's: Quilt - Smithing - Origins - Statures - HUD
Loveletters: Tabs - Atlas - Portable Crafting - Drogstyle
Others: Switchy - Crunchy - Starcaller

Versions

Release
1.4.4+1.21
fabric, neoforge, quilt · 1.21, 1.21.1 · 2mo ago
Fix: - Crash when `configLogging` was enabled on neoforge Changelog: https://github.com/sisby-folk/inventory-tabs/releases/tag/v1.4.4+1.20
2.2k
Release
1.4.3+1.21
fabric, neoforge, quilt · 1.21, 1.21.1 · 14mo ago
Fix: - Crash clicking on screens with tabs disabled Changelog: https://github.com/sisby-folk/inventory-tabs/releases/tag/v1.4.3+1.20
20.1k
Release
1.4.3+1.20
fabric, forge, quilt · 1.20.1 · 14mo ago
Fix: - Crash clicking on screens with tabs disabled Changelog: https://github.com/sisby-folk/inventory-tabs/releases/tag/v1.4.3+1.20
32.8k
Release
1.4.2+1.21
fabric, neoforge, quilt · 1.21, 1.21.1 · 14mo ago
Fix: - A crash with shulker boxes when consistent containers is disabled Changelog: https://github.com/sisby-folk/inventory-tabs/releases/tag/v1.4.2+1.20
1.4k
Release
1.4.1+1.21
fabric, neoforge, quilt · 1.21, 1.21.1 · 15mo ago
Fix: - A crash when the first screen you open checks bounds before initialising Changelog:…
940
Release
1.4.1+1.20
fabric, forge, quilt · 1.20.1 · 15mo ago
Fix: - A crash when the first screen you open checks bounds before initialising Changelog:…
1.1k
Release
1.4.0+1.21
fabric, neoforge, quilt · 1.21.1 · 22mo ago
Changes: - connector placeholder for 1.21 - fix tab key being broken for viewing player list Changelog:…
29.4k
Release
1.4.0+1.20
fabric, forge, quilt · 1.20.1 · 22mo ago
Changes: - connector placeholder for 1.21 - fix tab key being broken for viewing player list Changelog:…
9.5k
Release
1.4.0+1.19
fabric, quilt · 1.19.2 · 22mo ago
Changes: - connector placeholder for 1.21 - fix tab key being broken for viewing player list Changelog:…
506
Release
1.4.0+1.18
fabric, quilt · 1.18.2 · 22mo ago
Changes: - connector placeholder for 1.21 - fix tab key being broken for viewing player list Changelog:…
230
Release
1.3.3+1.21
fabric, quilt · 1.21.1 · 24mo ago
Changes: - Improve block sight raycast using a random spread. (thanks [CCheukKa](https://github.com/sisby-folk/inventory-tabs/pull/49)!) - Most instances…
7.6k
Release
1.3.3+1.20
fabric, forge, quilt · 1.20.1 · 24mo ago
Changes: - Improve block sight raycast using a random spread. (thanks [CCheukKa](https://github.com/sisby-folk/inventory-tabs/pull/49)!) - Most instances…
3.6k

Comments 0

No comments yet. Be the first to share your thoughts.

Download Inventory Tabs

R 1.4.4+1.21 1.21, 1.21.1 fabric, neoforge, quilt 389 KB R 1.4.3+1.21 1.21, 1.21.1 fabric, neoforge, quilt 389 KB R 1.4.3+1.20 1.20.1 fabric, forge, quilt 389 KB R 1.4.2+1.21 1.21, 1.21.1 fabric, neoforge, quilt 389 KB R 1.4.1+1.21 1.21, 1.21.1 fabric, neoforge, quilt 389 KB R 1.4.1+1.20 1.20.1 fabric, forge, quilt 389 KB R 1.4.0+1.21 1.21.1 fabric, neoforge, quilt 389 KB R 1.4.0+1.20 1.20.1 fabric, forge, quilt 389 KB R 1.4.0+1.19 1.19.2 fabric, quilt 389 KB R 1.4.0+1.18 1.18.2 fabric, quilt 389 KB R 1.3.3+1.21 1.21.1 fabric, quilt 377 KB R 1.3.3+1.20 1.20.1 fabric, forge, quilt 377 KB R 1.3.3+1.19 1.19.2 fabric, quilt 376 KB R 1.3.3+1.18 1.18.2 fabric, quilt 376 KB R 1.3.2+1.21 1.21.1 fabric, quilt 375 KB R 1.3.2+1.20 1.20.1 fabric, forge, quilt 343 KB R 1.3.2+1.19 1.19.2 fabric, quilt 343 KB R 1.3.2+1.18 1.18.2 fabric, quilt 343 KB R 1.3.1+1.20 1.20.1 fabric, forge, quilt 343 KB R 1.3.1+1.19 1.19.2 fabric, quilt 343 KB R 1.3.1+1.18 1.18.2 fabric, quilt 343 KB R 1.3.0+1.20 1.20.1 fabric, forge, quilt 343 KB R 1.2.0+1.19 1.19.2 fabric, quilt 342 KB R 1.2.0+1.20 1.20.1 fabric, forge, quilt 342 KB R 1.1.8+1.20 1.20.1 fabric, forge, quilt 337 KB R 1.1.8+1.19 1.19.2 fabric, quilt 337 KB R 1.1.8+1.18 1.18.2 fabric, quilt 337 KB R 1.1.7+1.20 1.20.1 fabric, forge, quilt 338 KB R 1.1.7+1.19 1.19.2 fabric, quilt 338 KB R 1.1.7+1.18 1.18.2 fabric, quilt 338 KB R 1.1.6+1.20 1.20.1 fabric, forge, quilt 337 KB R 1.1.6+1.19 1.19.2 fabric, quilt 337 KB R 1.1.6+1.18 1.18.2 fabric, quilt 336 KB R 1.1.5+1.20 1.20.1 fabric, forge, quilt 335 KB R 1.1.5+1.19 1.19.2 fabric, quilt 335 KB R 1.1.5+1.18 1.18.2 fabric, quilt 335 KB R 1.1.4+1.20 1.20.1 fabric, forge, quilt 330 KB R 1.1.3+1.20 1.20.1 fabric, forge, quilt 330 KB R 1.1.3+1.19 1.19.2 fabric, quilt 330 KB R 1.1.3+1.18 1.18.2 fabric, quilt 330 KB R 1.1.1+1.20 1.20.1 fabric, forge, quilt 333 KB R 1.1.1+1.19 1.19.2 fabric, quilt 332 KB R 1.1.1+1.18 1.18.2 fabric, quilt 332 KB R 1.1.0+1.20 1.20.1 fabric, forge, quilt 339 KB R 1.1.0+1.19 1.19.2 fabric, quilt 339 KB R 1.1.0+1.18 1.18.2 fabric, quilt 338 KB R 1.0.5+1.20 1.20.1 fabric, forge, quilt 334 KB R 1.0.5+1.19 1.19.2 fabric, quilt 333 KB R 1.0.5+1.18 1.18.2 fabric, quilt 333 KB R 1.0.4+1.20 1.20.1 fabric, forge, quilt 334 KB

Files are served directly from the original source. Modgrid does not host or modify them.