Journey Engine
A custom 2D game engine built with Rust and wGPU, designed for tight, expressive platformers. Powers Journey.
What's Here
| Section | What you'll find |
|---|---|
| Engine API | Public API reference with usage examples: GameApp, Context, input, physics, sprites, audio, animation |
| Technical Documentation | Architecture internals, game loop model, rendering pipeline, cross-platform strategy, dependency map |
Quick Links
- Play → journey.ujjwalvivek.com
- Crate → crates.io/crates/journey-engine
- Source → github.com/ujjwalvivek/journey
At a Glance
[dependencies]
journey-engine = "1.0.0"
#![allow(unused)] fn main() { use engine::{Context, GameAction, GameApp}; struct MyGame; impl GameApp for MyGame { type Action = MyAction; fn init(ctx: &mut Context<MyAction>) -> Self { MyGame } fn update(&mut self, ctx: &mut Context<MyAction>) {} fn fixed_update(&mut self, ctx: &mut Context<MyAction>) {} fn render(&mut self, ctx: &mut Context<MyAction>) {} } }
See Engine API → Quick Start for the full minimal example.