DocumentationIntroduction
DOCS

Introduction

An open-source, headless, plugin-based, AI-native iGaming framework. Clone it, extend it, deploy it - without forking core.

Openora is an open-source, headless, plugin-based, AI-native iGaming framework. Install it, extend it with your own modules and adapters, and deploy it - without forking core.

The backend ships fully featured: auth, wallet, lobby, games, chat, compliance, backoffice, and CMS. The frontend - all of it - lives in your own repo and talks to the API over HTTP.

What makes it different

  • Headless. Backend modules, contracts, and an SDK surface only. Bring your own UI.
  • Contract-first. Every shape is a Zod schema; types are inferred, never hand-written. oRPC turns a schema into a validated route plus OpenAPI.
  • Plugin host. New functionality enters through definePlugin. No forking, no decorator magic; every wiring point is an explicit, typed function call.
  • Swappable seams. Payments, KYC, messaging, realtime and jobs are ports you bind to any vendor.
  • AI-native. A machine-readable contract surface and an MCP dev server let coding agents extend the platform safely.

A taste

A module exposes typed routes; a consumer calls them with a fully typed client - zero codegen:

import { createClient } from "@openora/core/react";
import { contract } from "./contract";
 
const client = createClient(contract, { baseUrl: "http://localhost:3001" });
 
const { balance, currency } = await client.wallet.getBalance();
await client.wallet.deposit({ amount: 50, currency: "EUR", provider: "mock" });

createClient takes the composed contract as its first argument - that is what the client infers its types from, and why there is nothing to regenerate after a contract change.

What ships today

Nine domains, fourteen core modules, plus one gated add-on. There is no sportsbook and no bonus engine - those are domains you build on top of the same wallet, identity, compliance and audit foundation.

Every third-party integration is a port with a mock implementation behind it. No production vendor adapter ships in the framework: the port is the contract, and the binding is yours.

Not a certification

The framework has not been through an external security audit, and it ships no RNG certification. What it gives you is a defensible starting point - the hash-chained audit trail, sealed-token boundaries and compliance ports exist before you write your first line.

Next

Updated 1 day ago