1#![doc = include_str!("../README.md")]
2
3mod panic;
4use assets::AssetPlugin;
5
6use bevy::prelude::*;
7use config::Configuration;
8use io::IOPlugin;
9use logging::log_plugin;
10use ui::UIPlugin;
11
12fn main() -> AppExit {
18 panic::register_panic_handler();
19 let config = match Configuration::load() {
20 Ok(cfg) => cfg,
21 Err(err) => panic!("Failed to load configuration: {err:?}"),
22 };
23
24 App::new()
25 .add_plugins((
26 DefaultPlugins.set(log_plugin(&config.logging)),
27 IOPlugin,
28 UIPlugin,
29 AssetPlugin,
30 ))
31 .insert_resource(config)
32 .run()
33}