Ore UI
repository·main·Indexed 20 days ago
https://github.com/mojang/ore-uiA meta-repository of open-source building blocks from Mojang Studios for constructing video game user interfaces using web standards, React, and TypeScript. It includes @react-facet, an observable-based state management library designed for high-performance rendering and minimal re-renders in game UIs, along with supporting packages like @react-facet/core, @react-facet/dom-fiber, and @react-facet/dom-fiber-testing-library.
What's inside Ore UI
- This package provides ESLint configuration for projects using React Facet, a state management library designed for performant game UIs. For detailed usage instructions and API documentation for the React Facet ecosystem, refer to the official documentation site.
Overview of Ore UI
mainOre UI is a collection of open-source building blocks from Mojang Studios designed for constructing video game user interfaces (UIs) using web standards. It is used in titles such as Minecraft Bedrock Edition and Minecraft Legends. The ecosystem is built on React and TypeScript.Overview of @react-facet/core
main@react-facet/coreis a state management library designed specifically for building performant game UIs in React. It provides the core logic and state primitives required to manage complex UI states efficiently.For detailed usage guides, API references, and implementation patterns, refer to the official documentation at https://react-facet.mojang.com/.
Overview of @react-facet/shared-facet
mainThe
@react-facet/shared-facetpackage is part of the React Facet ecosystem, which provides state management designed specifically for performant game UIs.For detailed implementation guides, API references, and usage patterns, refer to the official documentation at https://react-facet.mojang.com/.
Overview of @react-facet
main@react-facetis an observable-based state management library designed for building performant game UIs within React. It leverages observables to minimize re-renders and optimize performance in high-frequency update scenarios typical of game interfaces.Overview of @react-facet for Game UI Development
mainThe@react-facetlibrary is designed specifically for building user interfaces intended to run inside computer games (such as main menus, settings screens, and HUDs). It addresses the challenge of using web-inspired technologies (like React) within the stringent frame budgets of real-time games by optimizing for performance in environments like Coherent Lab's Gameface or the Chromium Embedded Framework (CEF).Use @react-facet/dom-fiber for React Facet rendering
mainThe@react-facet/dom-fiberpackage is used when you need a React Renderer that understandsFacets natively. It providesfast-*components which should be used instead of traditional JSX DOM elements to ensure optimal performance and compatibility when working with Facets.Use @react-facet/dom-fiber-testing-library for testing Facet components
mainThe@react-facet/dom-fiber-testing-librarypackage provides specialized testing utilities specifically for testing React components that utilize Facets.Use @react-facet/dom-fiber for performant game UIs
main@react-facet/dom-fiber is a package within the React Facet ecosystem designed for state management in performant game UIs. It is part of a suite of tools optimized for high-performance rendering requirements.
For detailed implementation guides, API references, and usage patterns, refer to the official documentation at https://react-facet.mojang.com/.
Use @react-facet/core for core Facet logic and React Hooks
mainThe@react-facet/corepackage provides the fundamental building blocks for working with Facets. Use it to access the coreFacetdata structure, functions for constructing and operating on Facets, and React Hooks designed to integrate Facet logic into your React components.Use @react-facet/shared-facet for Gameface engine integration
mainThe
@react-facet/shared-facetpackage is specifically designed for interfacing with game engines that utilize Gameface. It includes:- A custom
Facetimplementation for direct engine interfacing. - A custom
Contextcomponent to facilitate communication between React and the game engine. - Specialized React hooks and helper functions for managing
sharedFacets.
- A custom
Use @react-facet/dom-fiber-testing-library for testing game UIs
mainThe
@react-facet/dom-fiber-testing-libraryis part of the React Facet ecosystem, which provides state management designed for performant game UIs. This specific package is intended for testing components within that ecosystem.For detailed usage instructions, API references, and integration guides, refer to the official documentation at https://react-facet.mojang.com/.