Ore UI
| Developer(s) | Paulo Ragonha, Fernando Vía Canel, Marlon Huber-Smith, Anna Päärni, Oleg Kozitsyn, Danila Dergachev, Omar ElGaml, James Nicholls |
|---|---|
| Publisher(s) | Mojang Studios |
| Platform(s) | Same as in Bedrock Edition, Minecraft Education, and China Edition |
| Engine | Coherent Gameface |
| Written in | TypeScript and JavaScript |
| Latest version | React Facet: v18.6.0 |
| Release date | First commit on October 11, 2021[1] |
| Size | 1.57MB |
| License | MIT License |
| Source available | Yes |
| Links |
{
"title": "Ore UI",
"rows": [
{
"field": "Paulo Ragonha, Fernando Vía Canel, Marlon Huber-Smith, Anna Päärni, (link to Oleg Kozitsyn article, displayed as Oleg Kozitsyn), Danila Dergachev, Omar ElGaml, James Nicholls",
"label": "Developer(s)"
},
{
"field": "(link to Mojang Studios article, displayed as Mojang Studios)",
"label": "Publisher(s)"
},
{
"field": "Same as in ''(link to Bedrock Edition article, displayed as Bedrock Edition)'', ''(link to Minecraft Education article, displayed as Minecraft Education)'', and ''(link to China Edition article, displayed as China Edition)''",
"label": "Platform(s)"
},
{
"field": "[https://coherent-labs.com/products/coherent-gameface/ Coherent Gameface]",
"label": "Engine"
},
{
"field": "(link to wikipedia:TypeScript article, displayed as TypeScript) and (link to wikipedia:JavaScript article, displayed as JavaScript)",
"label": "Written in"
},
{
"field": "React Facet: [https://github.com/Mojang/ore-ui/releases/tag/v18.6.0 v18.6.0]",
"label": "Latest version"
},
{
"field": "First commit on October 11, 2021",
"label": "Release date"
},
{
"field": "1.57MB",
"label": "Size"
},
{
"field": "(link to wikipedia:MIT License article, displayed as MIT License)",
"label": "License"
},
{
"field": "Yes",
"label": "<span style=\"white-space:normal\">Source available</span>"
},
{
"field": "\n* [https://github.com/Mojang/ore-ui Website]",
"label": "Links"
}
],
"invimages": [],
"images": [
"Ore UI.png"
]
}
Ore UI is a collection of open source packages designed for building interactive video game user interfaces using web technology, written in the TypeScript programming language and utilizing the React library. It provides reusable building blocks for video game development and general-purpose web applications.[2] Ore UI is currently used in Minecraft games including Bedrock Edition, Minecraft Education, China Edition, Minecraft Legends, and Minecraft Dungeons II.[3]



In Bedrock Edition, a new UI design system is being developed using the Gameface engine (formerly Hummingbird[6]) by Coherent Labs,[7][8][9] which made it possible to run modern web technology such as JavaScript, HTML and CSS.[10]
Development
[edit | edit source]Bedrock Edition's UI redesign tech preview
[edit | edit source]On November 9, 2018, Tobias Ahlin, the lead experience designer at Mojang Studios, announced a UI overhaul coming to Bedrock Edition built on Hummingbird engine, which runs a subset of HTML and CSS, and a design system built with React.[8] A tech preview for the main menu redesign featuring a user-friendly input for touch, controller, and keyboard was shown at the dotJS 2018 developer conference.

The new main menu from the tech preview features two pages. The top page shows the player's last played world, with the background UI that changes to match the world's thumbnail. The bottom page shows five interactable buttons and their actions possibly:
- "Play" which lets the player navigate to the Select World screen.
- "Store" which lets the player navigate to the store (similar to the modern Marketplace).
- "Skins" which lets the player change their skin (similar to the modern Character Creator).
- "Achievements" and "Settings" which let the player view their achievements and settings.
There is also a profile button (with the player's profile picture) on the top right corner, which likely lets the player navigate to their profile screen.
The website for Minecraft JavaScript API documentation was once available through a link which can be seen near the end of the talk; the documentation provides the page to the tech preview where users could freely interact with the redesigned user interface.[8] The original link for the documentation now redirects to a completely different website, making the documentation inaccessible; it is now considered lost media as it has not been archived elsewhere.
In beta 1.16.100.50, released on July 31, 2020, the new achievements screen was added. It was rolled out initially for 5 percent of the player base.[11] For the next 9 weeks, the number of players who could access the new achievement UI gradually increased from 5% to 75%.[12]
In the following years, more JSON UI menu screens were gradually refreshed with Ore UI, with design previews available in Minecraft Preview before full release in usually a few months. The internal resources for Ore UI include a texture atlas containing revamped textures for in-game GUIs, such as the inventory. These have been teased to be in early development.
React Facet
[edit | edit source]On October 18, 2021, the React Facet source code was published on Ore UI GitHub repository under the MIT License.[13]
On October 25, 2021,[14] Paulo Ragonha, a tech lead at Mojang Studios, introduced React Facet, an observable-based state management for video game user interface built in React.[7] This was announced at the React Advanced 2021 developer conference. In the talk, Ragonha showcases how React Facet bridges game data by introducing a system that connects the backend C++ game engine (where the game's states reside) with the frontend JavaScript UI. This connection relies on a concept called "facets", which are lightweight observable objects representing slices of the game's state. These facets allow the UI to subscribe to specific pieces of data from the game engine, such as player health, inventory, or environmental changes, and receive real-time updates as the state changes in the game.
Design system
[edit | edit source]The Ore UI design system can be found inside the Ore UI Developer Page section in the Minecraft Bedrock Developer Mode. For all texture elements, see Bedrock Edition GUI, UI, and Ore UI textures § Ore UI.
-
Ore UI Developer Pages section
-
Hero (green with Minecraft Ten font) button states
-
Primary (green with Mojangles font) button states
-
Secondary (white) button states
-
Destructive (red) button states
-
Modal with placeholder content
-
A dummy modal
-
Checkboxes in action
-
Checkbox states
-
Dropdown button states
-
Radio button states
-
Slider states
-
Toggle states
-
Text field states
-
Toggle button states
-
Tab button states
-
All tag variants
Usage
[edit | edit source]Additional note: Should Legends and Dungeons II usages be documented here? Or should they be documented in a page in the Legends and Dungeons II namespace?

The menu screens updated with Ore UI implemented new features using the design system, such as informative (and sometimes humorous) descriptions, smaller fonts for readability, clearer and modern layouts, more responsive sliders, more different types of elements, and tags. The buttons are styled similarly to JSON UI, with updated looks, pressing animations, and exclusive sounds for progressive buttons. Certain menus have received additional animations and images, and all UI textures have been updated, including controller hints.
Unlike JSON UI, Ore UI menus are separated into sections containing the elements. Depending on the UI scaling, each section is individually scaled, leaving gaps for the panorama in smaller scales, while some elements like the top navigation bar remain responsive. Dropdown buttons, which open an options pop-up, are replaced with always visible toggle buttons on smaller UI scales. Ore UI supports an additional accessibility scaling option to increase the scaling.
Ore UI is currently used in the following menu screens (including sub-menus):
Bedrock Edition
[edit | edit source]Release
[edit | edit source]- Sign in
- Quick world creation
- Pop-ups on the Main menu
- Play
- Create new world
- Edit world
- All settings tabs & main settings UI except for Subscriptions, Global Resources, Resource Packs, and Behavior Packs.
- Marketplace Realms Plus and Wishlist tabs & main marketplace UI except for Pop Culture, Marketplace Pass, Top Sellers, Popular
- Inbox
- Social drawer
- Search for players
- Profile
- Suspended
- Report bad behavior
- Screenshot gallery
- Achievements
- Player permissions (except Realms)
- Realms information & purchase screens
- Realms Hub
- Edit world Realms
- Death
- Sleep
Additionally, the toast that appears after 15 minutes of inactivity, along with the overlay, is based on Ore UI.
Preview
[edit | edit source]Bedrock Editor
[edit | edit source]Release
[edit | edit source]Minecraft Education
[edit | edit source]Release
[edit | edit source]China Edition
[edit | edit source]Release
[edit | edit source]- Skin store
- Mod store
- Play
- Create new world
- Mini map
Data-Driven UI
[edit | edit source]


Add-on creators can utilize scripting to create custom dialogs using Ore UI (DDUI).[17][18][19][20] Similar to JSON UI dialogs, this is implemented in the @minecraft/server-ui module. Unlike JSON UI, data-driven UI dialogs can automatically update, and have more controls. They can also use text component format to style text, such as color coding and localization.
Furthermore, the dialogs have generally the same functions as JSON UI dialogs, but styled in Ore UI. Creators can use toggles, sliders, text input fields, dropdown, collapsible content, and even dynamic images.
Differences with JSON UI
[edit | edit source]| Features | JSON UI (Legacy) |
Ore UI (Modern) |
|---|---|---|
| Creator customization |
|
|
| Color codes and emojis | Supports specific layout properties, color codes, and emojis. | Does not support color codes[24][25][26] on various screens, however, on the death screen in the name of the player or item or mob that killed them, and on the new forms screen in the label it is supported, not understanding emojis[27][28] they are not supported natively in text fields. |
| Status | Planned to be removed in future updates.[citation needed] | Currently in active development. |
| Performance | Can be unoptimized, leading to lower FPS, long loading times, and general poor user experience, especially with a lot of custom UI.[citation needed] | Aims for better performance, though some users have reported micro-freezes and lag issues[29], particularly on consoles. |
| Availability | Available by default on screens that are not yet migrated to Ore UI. | Available on a few select screens (Play, Settings, Create World, and Achievements), although it may fallback to legacy JSON UI in specific cases.[more information needed] |
| Accessibility | Limited built-in scaling. | Better support for different screen sizes. |
| Visuals | Pixel-perfect scaling; classic layout. | Modern visuals, but cited for blurry text and clunky button spacing. |
| Technology | Data-driven using JSON files. | Developed using modern web technology (JavaScript, HTML, CSS) and the Gameface engine by Coherent Labs. |
| Technical details | UI elements are defined in resource packs, specifically under <resource pack>/ui directory.
|
UI elements are defined internally in the game's installation files, specifically under Content/data/gui/dist/hbui.
|
Control icons
[edit | edit source]Keyboard and mouse controls
[edit | edit source]
Key A
Key B
Key C
Key D
Key E
Key F
Key G
Key H
Key I
Key J
Key K
Key L
Key M
Key N
Key O
Key P
Key Q
Key R
Key S
Key T
Key U
Key V
Key W
Key X
Key Y
Key Z
Key F2
Key arrow up
Key arrow right
Key arrow down
Key arrow left
Key bracket close
Key bracket close small
Key bracket open
Key bracket open small
Key Slash
Key alt
Key ctrl
Key ctrl small
Key enter
Key esc
Key shift
Key space
Key tab
Mouse
Mouse left click
Mouse right click
Mouse scroll click
Mouse scroll wheel
Controller controls
[edit | edit source]
X button
A button
B button
Y button
Up button
Right button
Down button
Left button
Menu button, d-pad
Select button
Right stick
Right stick arrow up
Right stick arrow right
Right stick arrow down
Right stick arrow left
Right bumper
Right trigger
Right stick click
Left stick
Left stick arrow up
Left stick arrow right
Left stick arrow down
Left stick arrow left
Left bumper
Left trigger
Left stick click

Triangle button
Circle button
Cross button
Square button
Up button, d-pad
Right button, d-pad
Down button, d-pad
Left button, d-pad
Menu button
Touch pad
Right stick
Right stick arrow up
Right stick arrow right
Right stick arrow down
Right stick arrow left
Right bumper
Right trigger
Right stick click
Left stick
Left stick arrow up
Left stick arrow right
Left stick arrow down
Left stick arrow left
Left bumper
Left trigger
Left stick click
Y button
B button
A button
X button
Up button, d-pad
Right button, d-pad
Down button, d-pad
Left button, d-pad
Menu button
Select button
Right stick
Right stick arrow up
Right stick arrow right
Right stick arrow down
Right stick arrow left
Right bumper
Right trigger
Right stick click
Left stick
Left stick arrow up
Left stick arrow right
Left stick arrow down
Left stick arrow left
Left bumper
Left trigger
Left stick click
Sounds
[edit | edit source]| Sounds | |||||||
|---|---|---|---|---|---|---|---|
| Sound | Closed captions | Source | Description | Identifier | Translation key | Volume | Pitch |
| Pressure Plate clicks[30] | Sound | When a menu button is clicked | random | subtitles | 1.0 | 1.0 | |
| ? | Sound | When a progressive button gets clicked | ? | ? | 1.0 | 1.0 | |
| ? | Sound | When the social drawer gets opened | ? | ? | 1.0 | 1.0 | |
| ? | Sound | When the social drawer gets closed | ? | ? | 1.0 | 1.0 | |
| ? | Sound | When a notification pops up | ? | ? | 1.0 | 1.0 | |
| ? | Blocks | When Hardcore mode is toggled on | fire | ? | 1.0 | 0.8–1.2 | |
| ? | Hostile Mobs | When Hardcore mode is toggled on | mob | ? | 1.0 | 1.0 | |
| ? | Blocks | When Hardcore mode is toggled off | random | ? | 0.5 | 1.8–2.4 | |
History
[edit | edit source]Bedrock Edition
[edit | edit source]| Bedrock Edition | |||||||
|---|---|---|---|---|---|---|---|
| 1.16.100 | beta 1.16.100.50 | Added Ore UI. | |||||
Added gui/dist/hbui. | |||||||
| beta 1.18.20.21 | |||||||
| 1.19.20 | Create New World screen is released to the public and no longer in Preview only. | ||||||
| Preview 1.19.40.20 | |||||||
| Preview 1.19.40.22 | |||||||
| 1.19.40 | Preview 1.19.40.23 | ||||||
| 1.19.50 | Control mode screen is released to the public and no longer in Preview only. | ||||||
| Report screen in profiles from other players is released to the public and no longer in Preview only. | |||||||
| Preview 1.19.80.20 | |||||||
| 1.19.80 | Preview 1.19.80.21 | ||||||
| Preview 1.20.30.22 | |||||||
| 1.20.30 | |||||||
| Preview 1.20.60.21 | |||||||
| 1.20.60 | Preview 1.20.60.23 | ||||||
| Realms Stories screen has been added with Ore UI, available in Preview only. | |||||||
| Preview 1.20.60.25 | |||||||
| Preview 1.20.80.21 | |||||||
| 1.20.80 | Preview 1.20.80.23 | ||||||
| Death screen is no longer experimental. | |||||||
| Release | Realms Stories screen is released to the public and no longer in Preview only. | ||||||
| 1.21.0 | Preview 1.21.0.20 | ||||||
| 1.21.20 | Preview 1.21.10.21 | ||||||
| Preview 1.21.20.21 | |||||||
| Release | Achievement button in main menu and game menu has been replaced with the profile button, along with the new profile screen, showing the player's statistics and achievements.[verify] | ||||||
| 1.21.30 | Preview 1.21.30.22 | ||||||
| Preview 1.21.30.24 | |||||||
| Preview 1.21.40.22 | |||||||
| 1.21.50 | Preview 1.21.50.24 | Sleep screen is released to the public and no longer experimental or in Preview only. | |||||
| December 28, 2024 | Edit World screen is released to the public and no longer in Preview only. | ||||||
| 1.21.60 | Play screen is released to the public and no longer in Preview only. | ||||||
| 1.21.70 | Preview 1.21.70.22 | ||||||
| Preview 1.21.70.23 | |||||||
| Release | |||||||
| Preview 1.21.80.25 | |||||||
| 1.21.90 | Preview 1.21.90.25 | ||||||
| Preview 1.21.100.20 | |||||||
| 1.21.100 | Preview 1.21.100.22 | ||||||
| Error screen on world load is released to the public and no longer Preview only. | |||||||
| Preview 1.21.110.20 | |||||||
| Preview 1.21.110.25 | |||||||
| "Friends" tab has been renamed to "Social" tab, available in Preview only. | |||||||
| 1.21.111 | |||||||
| Preview 1.21.120.22 | |||||||
| 1.21.120 | Preview 1.21.120.23 | ||||||
| Preview 1.21.120.24 | |||||||
| Release | "Social" tab in the game menu is released to the public and no longer in Preview only. | ||||||
| "Friends" tab has been renamed to "Social" tab, no longer in Preview only. | |||||||
| Preview 1.21.130.24 | |||||||
| 26.0 | Preview 26.0.23 | ||||||
| Preview 26.0.25 | |||||||
| Preview 26.0.28 | |||||||
| 26.10 | Preview 26.10.20 | ||||||
| 26.10 Experiment | Preview 26.10.21 | Added new data-driven UI features, to create dialogs with Ore UI. | |||||
| 26.10 | Preview 26.10.23 | ||||||
| Release | The settings screen is released to the public and no longer in Preview only. | ||||||
| 26.20 | Preview 26.20.22 | ||||||
| "Realms Stories" screen has been renamed to "Realms Hub" screen. | |||||||
| Release | Party tab in Social drawer and Create party screen is released to the public and no longer in Preview only. | ||||||
| The Edit World screen for Realms is released to the public and no longer in Preview only. | |||||||
| 26.30 | Preview 26.30.25 | ||||||
| Preview 26.30.28 | |||||||
| 26.30 | Preview 26.30.29 | Released DDUI out of experimental. | |||||
| 26.40 | Preview 26.40.20 | ||||||
| release | Storage settings screen and Saves realms hub screen have been updated to match Ore UI. | ||||||
| Preview 26.50.22 | Realms settings screen has been updated to match Ore UI. | ||||||
| 26.50 | Preview 26.50.20 | ||||||
| Upcoming Bedrock Edition | |||||||
| 26.60 | Preview 26.60.22 | ||||||
| Preview 26.60.29 | |||||||
| Preview 26.70.20 | |||||||
Bedrock Editor
[edit | edit source]| Bedrock Editor | |||
|---|---|---|---|
| Version | Preview version | Release version | Changelogs |
| 0.3 | Preview 1.19.80.20 | – | Create New Project screen has been added with Ore UI, available in Preview only. |
| Project Tool Mode screen has been added with Ore UI, available in Preview only. | |||
| 0.8.0 | – | 1.21.50 | Editor is released to the public and no longer in Preview only. |
| 1.3.1 | Preview 26.20.20 | - | |
| 26.50 | - | 26.50 | Main Menu screen is released to the public and no longer in Preview only. |
Minecraft Education
[edit | edit source]| Minecraft Education | |||||||
|---|---|---|---|---|---|---|---|
| 1.21.03 | Preview 1.21.01.0 | Death screen has been updated to match Ore UI. | |||||
| 1.21.91 | Preview 1.21.50.1 | Sleep screen has been updated to match Ore UI. | |||||
| Preview 1.21.90.1 | Added Ore UI for new world screen. | ||||||
Control
[edit | edit source]| Bedrock Edition | |||||||
|---|---|---|---|---|---|---|---|
| 1.16.100 | beta 1.16.100.50 | ||||||
| beta 1.16.100.56 | |||||||
| 1.16.210 | beta 1.16.210.50 | ||||||
| 1.16.220 | beta 1.16.220.50 | ||||||
| beta 1.16.220.52 | |||||||
| 1.17.0 | beta 1.17.0.56 | ||||||
| 1.17.30 | beta 1.17.20.20 | ||||||
| 1.18.30 | Preview 1.18.20.24 | ||||||
| 1.19.0 | Preview 1.19.0.31 | ||||||
| 1.19.10 | Preview 1.19.10.21 | ||||||
| 1.19.60 | Preview 1.19.60.22 | ||||||
| 1.19.70 | Preview 1.19.70.23 | ||||||
| 1.20.30 | Preview 1.20.30.21 | ||||||
| Preview 1.20.30.24 | |||||||
| 1.20.50 | Preview 1.20.50.20 | ||||||
| 1.21.20 | Preview 1.21.10.20 | ||||||
| 1.21.30 | Preview 1.21.30.23 | ||||||
| 1.21.90 | Preview 1.21.90.23 | ||||||
| 1.21.100 | Preview 1.21.100.20 | ||||||
| 1.21.111 | Preview 1.21.110.20 | ||||||
| 1.21.130 | Preview 1.21.130.20 | ||||||
| 26.10 | Preview 26.10.23 | ||||||
| 26.20 | Preview 26.20.27 | ||||||
Ore UI releases
[edit | edit source]These are standalone Ore UI releases on GitHub.
| Ore UI GitHub releases | |||
|---|---|---|---|
| Version | What's changed | Internal changes | Date |
| 0.1.2 | Stabilize automated performance tests. | – | November 4, 2021 |
| Add ESLint checks. | |||
| Fix Style updates not properly cleaning previous subscriptions. | |||
| 0.1.3 | Fix unmount cleanup of Facets. | November 5, 2021 | |
| 0.1.4 | Separate setWithCallback support from set in facet.
|
November 17, 2021 | |
| 0.2.0 | Add support for null values on some built-in equality checks. | December 10, 2021 | |
Add support for multiple facets in useFacetCallback and useFacetEffect.
| |||
| 0.2.1 | Add "contribute" file with publishing documentation. | December 15,2021 | |
Fix useFacetCallback return type.
| |||
| 0.2.2 | Add login instructions to CONTRIBUTING.md.
|
December 20, 2021 | |
useFacetState setter memoized.
| |||
| 0.2.3 | Add index to Map tests. | February 8, 2022 | |
| Add a condition property to the Mount component. | |||
Rename useFacetEffect to useFacetLayoutEffect and add a new useFacetEffect.
| |||
| Add With component to refine mounted components Facet type. | |||
Deferred Mount feature: DeferredMountWithCallback.
| |||
| 0.3.0 | Add support for id attribute. | Update README.md.
|
April 11, 2022 |
| Fix missing public APIs from published npm package. | Make the types defined in the hooks more dynamic. | ||
Rename RemoteFacet to SharedFacet.
|
Add tscompiler paths for our packages. | ||
| Rename shared to shared-facet. | Adding pr as a trigger of actions. | ||
| 0.3.2 | Introduce multiObserve and hasDefinedValue helpers.
|
– | June 28, 2022 |
| 0.3.3 | Update the types of the useFacetCallback function.
|
June 29, 2022 | |
| Fix circular dependency. | |||
| 0.3.4 | Fix line endings settings for prettier. | July 14, 2022 | |
| Allow null as return value of the mount components. | |||
| 0.3.5 | Added a deferred mount config provider. | July 25, 2022 | |
| 0.3.6 | Support onMouseMove handler.
|
August 2, 2022 | |
| 0.3.7 | Fix memory leak caused by not removing child from parent. | August 16, 2022 | |
| 0.3.8 | Fix createFacet equalityCheck to not fire for undefined or null.
|
August 18, 2022 | |
| 0.3.9 | Added createFacetContext.
|
August 24, 2022 | |
| 0.3.10 | Added defaultEqualityCheck to createFacet, and introduced createStaticFacet.
|
August 31, 2022 | |
| 0.3.11 | Support data- properties related to narration. | September 14, 2022 | |
| 0.3.12 | Upgrade TypeScript version + tie VSCode TS version to workspace. | September 21, 2022 | |
| 0.4.0 | Convert some key null coalescing operators into explicit ternaries. | October 24, 2022 | |
Move responsibility of cleaning up effects from facets to useEffect() / useFacetEffect().
| |||
| 0.4.1 | Upgrade Yarn to 3.2.4. | November 3, 2022 | |
| Turn off static access logs in test environment. | |||
| Added improved logging to static facet context. | |||
| 0.4.2 | Make it possible to supply an initial value for useFacetRef.
|
December 6, 2022 | |
Support defaultReturnValue in useFacetCallback.
| |||
| 0.4.3 | New linting rule to detect import issues. | ||
| 0.4.4 | Lock nodejs version. | March 3, 2023 | |
Fix useFacetCallback having outdated values.
| |||
Fix useFacetCallback mismatch subscriptions.
| |||
| Only accept numerical characters if the input type is number. | |||
| 0.4.5 | Update the list of maintainers in the README.md file.
|
March 24, 2023 | |
Keep useFacetCallback instance same even if facets instances change.
| |||
| 0.5.0 | Tweak hasDefinedValue typing.
|
June 15, 2023 | |
| Adds support for custom equality checks on unwrap. | |||
| Batching support. | |||
| 0.5.1 | Add support for Gameface's cohinline attribute in dom-fiber. | September 14, 2023 | |
Update the list of maintainers in the README.md file.
| |||
Force strict comparison eqeqeq eslint rule.
| |||
Revert to using void as cleanup type for useFacetEffect.
| |||
| 0.5.2 | Adding bigint to Value type. | September 25, 2023 | |
| 0.5.3 | Fix children being called with null and undefined. | October 27, 2023 | |
| 0.5.4 | Added support for foreignObject in our custom renderer.
|
January 31, 2024 | |
| 0.6.0 | Added property count to Map to make length of provided array available. | July 25, 2024 | |
Cached maps useFacetMemo can return values before any subscription.
| |||
| 0.6.1 | Fix useFacetUnwrap support for custom equality check.
| ||
| 0.6.2 | Updated puppeteer to the latest version. | March 12, 2025 | |
Update the useSharedFacet typing.
| |||
| 0.6.4 | Correctly export fireEvent from renderer.ts.
|
April 3, 2025 | |
| 18.0.0 | Update to React 18. | September 4, 2025 | |
| 18.1.0 | Support for React 18's useTransition and startTransition.
|
September 17, 2025 | |
| 18.2.0 | Move documentation from separate branch to main branch. | October 16, 2025 | |
Added comment for code smell using useFacetCallback.
| |||
Fix issue with incorrect typing for StrictReactNode.
| |||
| New Unwrap and Times helper components. | |||
| 18.3.0 | Documentation improvements & spring cleaning. | October 28, 2025 | |
Fix support for updating equality checks of useFacetWrapMemo.
| |||
| 18.4.0 | Fix createStaticFacet triggering NO_VALUE.
|
November 14, 2025 | |
| Fix edge case of effects without facets not running. | |||
Fix external types of mapFacets helper functions.
| |||
| 18.5.0 | Copilot support. | February 18, 2026 | |
| Support for new auxclick event. | |||
| 18.6.0 | Allow facets to be used as an initial value of useFacetState.
|
March 23, 2026 | |
Issues
[edit | edit source]Issues relating to "Ore UI", "OreUI", "New UI", "NewUI", "New design", "Data-Driven UI", "Data Driven UI", or "DDUI" are maintained on the bug tracker. Issues should be reported and viewed there.
Trivia
[edit | edit source]- The in-game descriptions of features are sometimes remarkable or humorous. Notable quotes are:
- Explore a mysterious world where you build, collect, craft, and fight monsters.
- Whatever the default game mode is... that's what you get.
- You can't respawn if you die. Good luck! You'll need it.
- A mysterious series of numbers used to create your world
- Might want to build with stone
- Red box goes boom
- Enjoy Minecraft with friends
- Minecraft is for everyone, including you
- Shiny glint for enchanted items
- Reverses up and down when looking around. A less common option for keyboard and mouse users, but you do you.
- We didn't know where else to put these settings
- Technical info that's not relevant to players. Feel free to have a look if you're curious!
- Not a trick question. How smooth do you like your blocks?
- Happy little clouds in the sky
- Leaves but better
- Bubbles with style
- Minecraft, in full screen
Gallery
[edit | edit source]Videos
[edit | edit source]dotJS 2018 - Tobias Ahlin: Adding JavaScript to Minecraft
[edit | edit source]Ore UI Documentation
[edit | edit source]The following screen can only be accessed in Minecraft Bedrock Edition 1.20.0 (Dev).
References
[edit | edit source]- ↑ "first commit · Mojang/ore-ui@a899c6a" – GitHub.
- ↑ "Mojang/ore-ui: 💎 Building blocks to construct game UIs using web tech." – GitHub.
- ↑ "Today I learned that Dungeons 2 uses OreUI! If only the main game learned from Legends and Dungeons 2 for how to make a good UI." – @SmokeyStack_ on X (formerly Twitter), October 3, 2026
- ↑ "Thanks for everyone that attended my talk live at @ReactAdvanced. For anyone that couldn't attend, I'll post a link here once it is available for everyone. It was a developer conference, but if you were waiting for a sneak peek on the new UI components... here it is ☺️" – @pirelenito on X (formerly Twitter), October 26, 2021
- ↑ "Mojang 2022 - Now" – Design lead.
- ↑ "GameTest Q&A 2021/08/06" – Bedrock Wiki.
- ↑ a b "Using React to Build Performant Game UIs in Minecraft - Paulo Ragonha, React Advanced 2021" – December 27, 2021 on YouTube
- ↑ a b c "dotJS 2018 - Tobias Ahlin - Adding JavaScript to Minecraft" – March 4, 2019 on YouTube
- ↑ "Powered by Coherent Labs" – Coherent Labs.
- ↑ "Coherent Gameface" – Coherent Labs.
- ↑ a b "Uh-oh! I think I pressed something, and now 5% of #Minecraft beta users will see the new achievements screen. Well, might as well ask for feedback here: https://aka.ms/mcAchievementBeta." – @Volgar on X (formerly Twitter), July 31, 2020
- ↑ "I'll provide more context later, but... jam. It gets everywhere. Hence, a whopping 75% of #Minecraft players have a chance to see the new achievements screen both in the latest release and the latest beta. Stay tuned! Ta-tah!" – @Volgar on X (formerly Twitter), December 10, 2020
- ↑ "Importing codebase from internal repository (#1) · Mojang/ore-ui@96c107c" – GitHub.
- ↑ "Schedule" – React Advanced.
- ↑ "Mojang added styling to DDUI. Its still largely work-in-progress and not publicly accessible." – @theaddonn on X (formerly Twitter), October 21, 2026
- ↑ ddui styling.md
- ↑ "Introduction to the Data-Driven UI (DDUI) Framework" – Microsoft Learn.
- ↑ "No one is talking about this? A new folder called "ddui" was just added to Bedrock and it contains all the storage block screens.
This might be the first step to having data driven UI using OreUI." – @SmokeyStack_ on X (formerly Twitter), October 22, 2025 - ↑ "For those of you who do not like this, here's some good news.
This will be data driven. All blocks that have a UI got moved under the data driven entry.
Additionally, there is a new command related to the Data Driven UI." – @SmokeyStack_ on X (formerly Twitter), December 4, 2025 - ↑ "It seems Mojang is now laying the ground work to make DDUI in resource packs." – @SmokeyStack_ on X (formerly Twitter), September 2, 2026
- ↑ "No. Allowing directly changing screens is what made improving the UI design of Minecraft impossible: any change breaks existing mods. It's the same reason why there is a graveyard of abandoned mods for Java Minecraft – not every modder has time to make updates for every release." – @Volgar on X (formerly Twitter), December 9, 2024
- ↑ "Intro to JSON UI" – Bedrock Wiki, April 1, 2024.
- ↑ MCPE-180757 – HBUI texture files are not in the "resource_packs" folder – resolved as "Works As Intended".
- ↑ "It probably won't be supported in the new screens, but it certainly shouldn't look like this, just plain text. Thanks, I'll pass it to the team." – @Volgar on X (formerly Twitter), December 12, 2024
- ↑ MCPE-174371 – The new "Play screen" UI doesn't support colored characters – resolved as "Works As Intended".
- ↑ MCPE-152246 – New Create New World UI doesn't support text formatting codes – resolved as "Works As Intended".
- ↑ "Emojis & Symbols" – Bedrock Wiki, April 1, 2024.
- ↑ MCPE-185774 – New server UI does not show some characters – resolved as "Won't Fix".
- ↑ MCPE-180677 – Extreme performance downgrades in Ore UI vs JSON UI
- ↑ a b Although there is a subtitle and a translation key assigned to this sound, the subtitle only appears if the sound is played directly in-game.
- ↑ "Howdy, my dears! In case you missed it, there is now new Inbox screen built with Ore UI available in #Minecraft preview builds. It's a work in progress, but hopefully it'd be a hub for release notes, invitations etc" – @Volgar on X (formerly Twitter), December 13, 2023
- ↑ "Well, actually, that's not all, my dears. In today's preview the new Edit World screen is rolling out too! Check it out, and use the feedback button on the screen to tell us what you think." – @Volgar on X (formerly Twitter), December 13, 2023
External links
[edit | edit source]Feedback
[edit | edit source]- Achievement in beta 1.16.100.50
- Achievement Screen Beta Thread on July 30, 2020
- Create new world in beta 1.18.20.21
- Updated “Create New World” experience in Bedrock Beta on January 27, 2022
- Death in Preview 1.19.80.20
- Updated "You Died" Screen Experience on March 8, 2023
- Realms stories in Preview 1.20.60.23
- Let's talk about Realms Stories on December 13, 2023
- Servers in Preview 1.20.80.21
- Updated 'Servers Tab' Experience in Bedrock Preview on February 23, 2024
- Search for players in Preview 1.20.80.23
- Enhancements to finding friends in Bedrock Preview on March 18, 2024
- Profile in Preview 1.21.0.20
- Updated Player Profile in Bedrock Preview! on April 3, 2024
- Realms in Preview 1.21.20.21
- Updated Realms Tab Experience in Bedrock Preview on April 23, 2024
- Screenshots in Preview 1.21.30.22
- Screenshots available in Bedrock Preview! on August 7, 2024
- Create from template in Preview 1.21.30.24
- Updated Template Screen Experience in Bedrock Preview! on April 11, 2024
- Play in 1.21.60
- Let’s talk about the new Bedrock Edition Play screen! on December 12, 2024
- Player permissions in Preview 1.21.70.22
- Improvements to the Player Permissions screen in Bedrock on February 5, 2025
- Social drawer on Party system in Preview 26.0.25
- New Party System (Bedrock Preview) on December 10, 2025
- Settings in Preview 26.0.28
- Let’s talk about our updated settings! (Bedrock) on January 12, 2026
- Realms hub in Preview 26.20.22
- Bedrock Realms Hub on March 25, 2026
- Main menu in Preview 26.60.29
- Let's talk about updated main menu (Bedrock) on September 30, 2026
GitHub
[edit | edit source]Data-Driven UI
[edit | edit source]Documentation
[edit | edit source]GitHub
[edit | edit source]Navigation
[edit | edit source]| Editions |
| ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Development |
| ||||||||
| Technical |
| ||||||||
| Multiplayer | |||||||||
| Exclusive features |
| ||||||||
| Removed | |||||||||
| |||||||||||||||||||
| |||||||||||||||||||