MCPcopy Index your code
hub / github.com/Buuz135/FunctionalStorage

github.com/Buuz135/FunctionalStorage @1.21-1.5.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release 1.21-1.5.0 ↗ · + Follow
1,013 symbols 2,920 edges 118 files 6 documented · 1% updated 36d ago1.21-1.5.7 · 2026-06-01★ 44137 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Logo

Discord Join my DiscordPatreon Support me on PatreonTwitter Follow me on twitter

Functional Storage is an alternative take on the storage solution of Storage Drawers, with an updated look and additional functionalities like:

  • Pulling Upgrade: It pulls items from an adjacent inventory
  • Pushing Upgrade: It pushes items to an adjacent inventory
  • Collecting Upgrade: It collects items on the ground
  • Armory Cabinet: It stores 4096 non stackeable items(by default) and can only be accessed with external tools (currently) like Applied Energistics or Refined Storage external storage tools
  • Storage Upgrades: Have changed a a bit, there a less types of them but they give a bigger boost
  • Storage Controller: You can link drawers to it without having direct contact
  • Fluid Drawer: Stores Fluids
  • Controller Extensions: Acts as a Storage Controller when linked to it
  • Simple Compacting Drawer: Its like a compacting drawer but with only 2 slots

Image

How to use

Drawer controller: To link a drawer to a drawer controller you need to use a Linking Tool Ender Drawer: You can copy a drawer frequency by left clicking it with a Linking Tool and then you can right click another Ender Drawer and then they will have their contents synced Linking Tool: Right + Clicking a controller to configure it then you can link Normal/Compacting/Ender Drawer to a controller by Right Clicking them if they are in range (8 radius by default)

Planned features

Armory Cabinet easy access

Extension points exported contracts — how you extend this code

FunctionalUpgradeBehavior (Interface)
(no doc) [11 implementers]
src/main/java/com/buuz135/functionalstorage/item/component/FunctionalUpgradeBehavior.java
FramedBlock (Interface)
(no doc) [6 implementers]
src/main/java/com/buuz135/functionalstorage/block/FramedBlock.java
FramedTile (Interface)
(no doc) [12 implementers]
src/main/java/com/buuz135/functionalstorage/block/tile/FramedTile.java
ILockable (Interface)
(no doc) [10 implementers]
src/main/java/com/buuz135/functionalstorage/inventory/ILockable.java
SizeProvider (Interface)
(no doc) [3 implementers]
src/main/java/com/buuz135/functionalstorage/item/component/SizeProvider.java

Core symbols most depended-on inside this repo

get
called by 418
src/main/java/com/buuz135/functionalstorage/client/loader/FramedModel.java
get
called by 95
src/main/java/com/buuz135/functionalstorage/item/FSAttachments.java
getInstance
called by 83
src/main/java/com/buuz135/functionalstorage/world/EnderSavedData.java
getStackInSlot
called by 76
src/main/java/com/buuz135/functionalstorage/fluid/ControllerFluidHandler.java
getAmount
called by 72
src/main/java/com/buuz135/functionalstorage/inventory/BigInventoryHandler.java
getResult
called by 56
src/main/java/com/buuz135/functionalstorage/util/CompactingUtil.java
getSlots
called by 55
src/main/java/com/buuz135/functionalstorage/inventory/BigInventoryHandler.java
save
called by 49
src/main/java/com/buuz135/functionalstorage/world/EnderSavedData.java

Shape

Method 871
Class 127
Enum 9
Interface 6

Languages

Java100%

Modules by API surface

src/main/java/com/buuz135/functionalstorage/client/loader/FramedModel.java52 symbols
src/main/java/com/buuz135/functionalstorage/block/tile/ControllableDrawerTile.java40 symbols
src/main/java/com/buuz135/functionalstorage/fluid/BigFluidHandler.java27 symbols
src/main/java/com/buuz135/functionalstorage/block/Drawer.java26 symbols
src/main/java/com/buuz135/functionalstorage/inventory/CompactingInventoryHandler.java25 symbols
src/main/java/com/buuz135/functionalstorage/inventory/BigInventoryHandler.java25 symbols
src/main/java/com/buuz135/functionalstorage/inventory/item/CompactingStackItemHandler.java22 symbols
src/main/java/com/buuz135/functionalstorage/util/CompactingUtil.java20 symbols
src/main/java/com/buuz135/functionalstorage/block/tile/FluidDrawerTile.java20 symbols
src/main/java/com/buuz135/functionalstorage/item/component/SizeProvider.java19 symbols
src/main/java/com/buuz135/functionalstorage/item/LinkingToolItem.java19 symbols
src/main/java/com/buuz135/functionalstorage/inventory/ControllerInventoryHandler.java18 symbols

For agents

$ claude mcp add FunctionalStorage \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact