Skip to content

📦 UI

Bridges the inventory system to UI components.

This folder contains binding and coordination logic that connects runtime inventory state to UI layers.


🎯 Purpose

Provide service-aware binding and event-driven updates for UI that displays inventory state.


🧩 What Lives Here

  • InventoryBinder → binds a UI component to an owner and container and refreshes on changes

⚠️ Important Notes

  • This layer handles binding and update orchestration only
  • It does not implement visual styling
  • It does not implement gameplay logic or authority checks

🧠 Usage Guidance

Binding and orchestration

Components resolve the inventory service, bind to an owner and container, and subscribe to change events.


Event-driven updates

Updates are triggered by service-level change notifications and filtered to the bound owner and container.


Refresh pattern

UI components override a refresh method to update visuals when data changes.


Layer separation

  • UI (this folder): binding and orchestration
  • UI.Presentation: visual styling and formatting

🚫 Not for Production Use

This folder does not:

  • Define visual styling or themes
  • Perform gameplay decisions
  • Enforce authority
  • Implement container mutation rules
  • Define search or sort behaviour