Skip to content
Created with ❤️ by StarkMP for the Skyrim modding community.
Prisma UI, Skyrim Next-gen UI Framework Prisma UI, Skyrim Next-gen UI Framework

Skyrim Next-Gen Web UI Framework

Create beautiful and modern user-interface for Skyrim with strong web technologies.

Good Performance

10x lighter than Chromium with good performance using optimized WebKit integration

🎨

Modern Technologies

Use HTML, CSS, JavaScript, React, Vue, and any modern frontend framework

🔧

Developer Friendly

Develop and test directly in browser with hot reload and modern dev tools

Effective

Built on WebKit with DirectX 11 integration, delivering smooth UI performance while being more effective than traditional solutions.

Modern Web Stack

Use the full power of modern web technologies - CSS Grid, Flexbox, animations, and the latest JavaScript features including ES2022.

Bidirectional Communication

Seamless C++ ↔ JavaScript communication with JSON data exchange and function return values for complex game integration.

Gradual Integration

Non-invasive approach - integrate web UI step by step without touching vanilla Skyrim’s SWF interface system.

See how easy it is to create interactive UI that communicates with Skyrim:

SKSE Plugin Integration
// C++ (SKSE Plugin)
PrismaView view = PrismaUI->CreateView("my-ui/index.html", [](PrismaView view) {
// Send player data to UI when ready
PrismaUI->Invoke(view, "updatePlayerStats({health: 100, magicka: 50})");
});
// Register listener for UI events
PrismaUI->RegisterJSListener(view, "castSpell", [](const char* spellName) {
logger::info("Player wants to cast: {}", spellName);
// Cast spell in game...
});
Web UI Code
<!-- HTML/JavaScript -->
<div class="player-stats">
<div class="stat">Health: <span id="health">0</span></div>
<div class="stat">Magicka: <span id="magicka">0</span></div>
<button onclick="castFireball()">Cast Fireball</button>
</div>
<script>
// Receive data from game
window.updatePlayerStats = (stats) => {
document.getElementById('health').textContent = stats.health;
document.getElementById('magicka').textContent = stats.magicka;
};
// Send commands to game
function castFireball() {
window.castSpell('Fireball');
}
</script>

Ready to revolutionize Skyrim UI modding?

Join the next generation of Skyrim UI development with modern web technologies. Create stunning interfaces that were never possible before.