khora_core/ui/app/mod.rs
1// Copyright 2025 eraflo
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8
9//! Backend-agnostic app runtime — `App` trait + `AppContext` trait.
10//!
11//! Standalone tools (the hub, future asset cooker, …) implement [`App`]
12//! and receive a [`AppContext`] each frame. Neither the trait nor its
13//! impls expose `egui` / `eframe` types — the concrete backend lives
14//! in `khora-infra::ui::egui::app`.
15//!
16//! Apps don't import this module directly; they reach it through the
17//! `khora-sdk` re-exports + a `run_native()` function that boots the
18//! eframe backend behind the trait.
19
20pub mod context;
21pub mod runtime;
22
23pub use context::AppContext;
24pub use runtime::{App, AppLifecycle};