Direct API access
Request the plugin interface at runtime and manage views without compile-time linking.
PrismaUI lets Fallout 4 mods run modern HTML interfaces inside the game.
Menus, HUDs, terminals, and overlays — built with real web technology and rendered live inside the game world, no loading screens, no Scaleform.
#include "PrismaUI_F4_API.h"
static PRISMA_UI_API::IVPrismaUI3* g_api = nullptr;
// kGameDataReady:
// g_api = PRISMA_UI_API::RequestPluginAPI<
// PRISMA_UI_API::IVPrismaUI3>();
static void OnDomReady(PrismaView view) {
g_api->RegisterConsoleCallback(view,
[](PrismaView, PRISMA_UI_API::ConsoleMessageLevel,
const char* msg) {
logger::info("[JS] {}", msg);
});
}
static void CreateViews() {
PrismaView v = g_api->CreateView("menu.html", OnDomReady);
g_api->Hide(v);
}What it enables
Mods built on PrismaUI can display fully interactive HTML menus, inventory screens, terminals, and HUDs rendered inside Fallout 4.
The interface updates in real time as the game world changes — health, inventory, quest state — without any loading screens.
Mod authors write plain HTML, CSS, and JavaScript. React, Vue, or no framework at all — whatever they already know.
Ecosystem
Mods and tools powered by PrismaUI — more on the way.
Real-time Global Chat
Live in-game chat panel synced across players, built entirely in HTML with WebSocket support.
HTML Terminal
A fully modern, interactive terminal interface rendered inside Fallout 4 with command history and autocomplete.
Inventory Grid System
Drag-and-drop grid inventory with item tooltips, filters, and sorting — replacing the vanilla Pip-Boy list.
Framework features
Request the plugin interface at runtime and manage views without compile-time linking.
Push data into the page with Invoke or InteropCall and listen for JS events from C++.
Build UI with HTML, CSS, JavaScript, React, Vue, or any frontend stack you already use.
Integration
Request the API, create a view after game data is ready, then move data and events between C++ and JavaScript. That's the whole model.
Request the Prisma API during kGameDataReady and guard against nullptr.
Create views on kPostLoadGame or kNewGame, not during plugin load.
Register JS listeners inside the DOM-ready callback.
Use console callbacks while developing so JavaScript errors are visible.
Credits & Thanks
PrismaUI for Fallout 4 is maintained by the Fallen World team. This port would not exist without the original PrismaUI framework created for Skyrim Special Edition.
Full credit goes to the original PrismaUI authors. If you are a Skyrim modder or want to see where this framework started, visit the official site: prismaui.dev ↗
PrismaUI F4 is open source and community-driven. Contributions, bug reports, and feature requests are welcome on GitHub and Discord.