F4SE Plugin · Fallout 4

Prisma UIfor Fallout 4

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.

For mod authors
Quick start
#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

01

Modern menus in-game

Mods built on PrismaUI can display fully interactive HTML menus, inventory screens, terminals, and HUDs rendered inside Fallout 4.

02

Reacts to game events

The interface updates in real time as the game world changes — health, inventory, quest state — without any loading screens.

03

Any web stack

Mod authors write plain HTML, CSS, and JavaScript. React, Vue, or no framework at all — whatever they already know.

Ecosystem

Built with PrismaUI

Mods and tools powered by PrismaUI — more on the way.

In development

Real-time Global Chat

Live in-game chat panel synced across players, built entirely in HTML with WebSocket support.

In development

HTML Terminal

A fully modern, interactive terminal interface rendered inside Fallout 4 with command history and autocomplete.

In development

Inventory Grid System

Drag-and-drop grid inventory with item tooltips, filters, and sorting — replacing the vanilla Pip-Boy list.

Framework features

01

Direct API access

Request the plugin interface at runtime and manage views without compile-time linking.

02

Bidirectional communication

Push data into the page with Invoke or InteropCall and listen for JS events from C++.

03

Modern web stack

Build UI with HTML, CSS, JavaScript, React, Vue, or any frontend stack you already use.

Integration

A small API surface, on purpose.

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.

  • The public API is declared in PrismaUI_F4_API.h.
  • Request the Prisma API during kGameDataReady and handle nullptr if the framework is not installed.
  • CreateView starts visible — hide it immediately unless you want the view on screen.
  • Create views on kPostLoadGame or kNewGame, not during plugin load.
Step 1

Request the Prisma API during kGameDataReady and guard against nullptr.

Step 2

Create views on kPostLoadGame or kNewGame, not during plugin load.

Step 3

Register JS listeners inside the DOM-ready callback.

Step 4

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.