Skip to main content

dotzuki_renderer/layout_engine/
mod.rs

1//! JSON layout engine — declarative layout system for JRPG screen composition.
2//!
3//! This module provides a declarative, JSON-driven layout engine that composes
4//! screens from a tree of layout elements. Layout definitions are deserialized
5//! from JSON and rendered by element-specific renderers.
6//!
7//! ## Architecture
8//!
9//! ```text
10//! JSON Layout → Deserialize → ScreenLayout (element tree)
11//!                               ↓
12//!                          LayoutEngine::render()
13//!                               ↓
14//!                    Element renderers (border, text, tile, …)
15//!                               ↓
16//!                          Framebuffer
17//! ```
18//!
19//! ## Sub-modules
20//!
21//! - [`types`] — Core type definitions (ScreenLayout, LayoutElement,
22//!   ElementParams, etc.)
23
24pub mod data_context;
25pub mod deserialize;
26pub mod elements;
27pub mod registry;
28pub mod renderer;
29pub mod types;