Skip to content
ELURA/ ONLINE RUNTIME

Run the world behind your game.

A Rust server framework with typed game logic, resilient networking, and infrastructure that scales only when you need it.

Start with a generated application

You do not need to understand every Elura crate before running a server. Generate an application first, then learn each piece while changing real code:

bash
cargo install elura-cli
mkdir my-game && cd my-game
elura init all --dir .

The generator creates editable application code, local configuration, Docker files, and Kubernetes manifests. Continue with the 10-minute quick start to configure development secrets and launch both processes.

The mental model

text
Player client ──> Gateway ──> World ──> your typed handler
                  sessions     routing   game rules
  • Gateway owns public connections, authentication, sessions, and routing.
  • World executes authenticated game commands and middleware.
  • Your application owns routes, game rules, configuration, persistence, and deployment choices.

That separation stays the same whether you run locally, as a monolith, or across multiple Kubernetes nodes. Read the architecture overview when you want the full picture.

Choose your next step

I want to…Go to…
Run Elura for the first timeQuick start
Run Gateway and World in one process without the CLIManual single-process setup
Build separate Gateway and World processes without the CLIManual split setup
Assemble shared state and dynamic discoveryManual distributed setup
Add my first game commandWorld modules and routes
Connect a C++, C#, or TypeScript clientClient protocol SDKs
Understand generated filesGenerated project
Add login, OTP, SMS, or paymentsProviders
Add Redis, SQL, DNS, or KubernetesDistributed infrastructure
Prepare a production releaseProduction checklist

Project status

Elura is under active 0.x development. Pin exact versions in production and review compatibility before upgrading.

Released under the MIT License.