furmint_runtime/lib.rs
1//! # `furmint-runtime`
2//! The furmint engine's runtime module, which basically serves as the main entry point into the application (game).
3//! Runtime contains only essential pieces: an ECS, time management (ticks), scene management.
4//! It "glues" together everything else, you name it: renderer, tiles, sprites, animations, maybe some RPG-like systems.
5//!
6//! Previously this was called `furmint-engine`, but it's not the actual engine, because the actual engine is a combination
7//! of all crates and plugins. "Runtime" is the best word to describe this crate.
8#![warn(missing_docs)]
9
10/// Application layer module
11pub mod app;
12pub mod error;
13pub mod events;
14pub mod plugins;
15/// Module providing functionality of scenes
16pub mod scenes;
17#[cfg(test)]
18mod tests;
19/// Module providing time (tick) functionality
20pub mod time;
21
22/// Prelude module
23pub mod prelude {
24 pub use crate::app::{App, AppBuilder};
25 pub use furmint_registry::ComponentFactory;
26 pub use furmint_registry::ComponentRegistry;
27 pub use furmint_registry::impl_component_factory;
28}