Native-first Rust runtime for Windows: desktop applications, 2D/3D games, and optional WebView.
Yuyib exposes high-level facades (Application, Game, Game2dScene, Game3dScene) on top of explicit low-level boundaries: ECS (bevy_ecs), a WGPU render graph, typed assets/importers, and bounded background work. The Editor is a separate consumer of public contracts, not a second runtime.
Status: Experimental / foundation. The public API and capabilities are still changing. Check Limits & Compatibility and KNOWN_ISSUES.md before relying on a surface.
| Area | Summary |
|---|---|
| Application / Game | Window, WGPU surface, frame callbacks, ECS world |
| Assets | Typed handles, importer registry, cook cache (glTF) |
| 2D | Sprites, atlas, tilemap foundation, animation |
| 3D | glTF/GLB import, PBR (IBL, shadows, bloom, FXAA, SSAO), character motor |
| Editor | Project/scene, hierarchy, Inspector, gizmo, process-isolated Play |
| Optional | Native UI, WebView2, audio, networking, Source 1 VMF slice |
Requirements: Windows, Rust toolchain (edition 2024), a GPU supported by WGPU.
cargo run -p yuyib --example clear_windowMore runnable examples: examples catalog. Minimal code:
use yuyib::{
app::{Application, RenderLoop},
platform::WindowConfig,
};
fn main() -> Result<(), yuyib::app::ApplicationError> {
Application::new()
.window(WindowConfig {
title: "My application".to_owned(),
..Default::default()
})
.render_loop(RenderLoop::Continuous)
.run()
}Details: Getting started (Russian wiki).
| Document | Purpose |
|---|---|
| Wiki (mdBook) | User guides and reference (primarily Russian) |
| Architecture / ADR | Decisions and invariants for maintainers |
| Roadmap | Milestones toward Engine MVP |
| Editor integration | Authoring contract and workflow |
| Editor status | Current Editor/engine slice |
| Known issues | Limits and open defects |
| Contributing | How to contribute |
Build the wiki locally (via xtask when needed):
cargo run -p xtask -- docsOutput lands in docs/site/book/.
crates/ Runtime, content, gameplay, authoring, editor
docs/
architecture/ ADR + roadmap
editor/ Editor contracts and status
site/ mdBook wiki
editor-ui/ WebView shell (Monaco, hierarchy, Inspector)
editor_tests/ Fixture projects
for_tests/ Shared assets for examples/smokes
xtask/ Docs/tooling helpers
MIT OR Apache-2.0. See LICENSE-MIT and LICENSE-APACHE.
Native-first Rust runtime для Windows: desktop applications, 2D/3D games и optional WebView.
Yuyib даёт high-level facades (Application, Game, Game2dScene, Game3dScene) поверх явных low-level границ: ECS (bevy_ecs), WGPU render graph, typed assets/importers и bounded background work. Editor — отдельный consumer публичных contracts, не второй runtime.
Статус: Experimental / foundation. Public API и capabilities ещё меняются. Перед использованием сверяйте Limits & Compatibility и KNOWN_ISSUES.md.
| Область | Кратко |
|---|---|
| Application / Game | Window, WGPU surface, frame callbacks, ECS world |
| Assets | Typed handles, importer registry, cook cache (glTF) |
| 2D | Sprites, atlas, tilemap foundation, animation |
| 3D | glTF/GLB import, PBR (IBL, shadows, bloom, FXAA, SSAO), character motor |
| Editor | Project/scene, hierarchy, Inspector, gizmo, process-isolated Play |
| Optional | Native UI, WebView2, audio, networking, Source 1 VMF slice |
Требования: Windows, Rust toolchain (edition 2024), GPU с поддержкой WGPU.
cargo run -p yuyib --example clear_windowДругие runnable examples — в каталоге примеров. Минимальный код:
use yuyib::{
app::{Application, RenderLoop},
platform::WindowConfig,
};
fn main() -> Result<(), yuyib::app::ApplicationError> {
Application::new()
.window(WindowConfig {
title: "Моё приложение".to_owned(),
..Default::default()
})
.render_loop(RenderLoop::Continuous)
.run()
}Больше деталей: Начало работы.
| Документ | Назначение |
|---|---|
| Wiki (mdBook) | Пользовательские guides и reference |
| Architecture / ADR | Решения и invariants для maintainers |
| Roadmap | Milestones до Engine MVP |
| Editor integration | Authoring contract и workflow |
| Editor status | Фактическое состояние Editor/engine slice |
| Known issues | Ограничения и открытые дефекты |
| Contributing | Как вносить изменения |
Сборка wiki локально:
cargo run -p xtask -- docsСобранный book — в docs/site/book/.
crates/ Runtime, content, gameplay, authoring, editor
docs/
architecture/ ADR + roadmap
editor/ Editor contracts и status
site/ mdBook wiki
editor-ui/ WebView shell (Monaco, hierarchy, Inspector)
editor_tests/ Fixture projects
for_tests/ Shared assets для examples/smokes
xtask/ Docs/tooling helpers
MIT OR Apache-2.0. См. LICENSE-MIT и LICENSE-APACHE.