Skip to main content

anathema/
lib.rs

1//! A TUI library with a custom template language and runtime.
2//!
3//! See the guide to get stared: https://togglebyte.github.io/anathema-guide/
4pub use {
5    anathema_backend as backend,                 // backend
6    anathema_default_widgets as default_widgets, // default widgets
7    anathema_geometry as geometry,               // geometry
8    anathema_runtime as runtime,                 // runtime
9    anathema_state as state,                     // state
10    anathema_state_derive as derive,             // derive
11    anathema_store as store,                     // store
12    anathema_templates as templates,             // templates
13    anathema_value_resolver as resolver,         // resolver
14    anathema_widgets as widgets,                 // wigets
15};
16
17pub mod prelude {
18    pub use crate::backend::Backend;
19    pub use crate::backend::tui::TuiBackend;
20    pub use crate::runtime::Runtime;
21    pub use crate::templates::{ComponentBlueprintId, Document, SourceKind, ToSourceKind};
22    pub use crate::widgets::components::MessageReceiver;
23}
24
25pub mod component {
26    pub use crate::state::{Color, List, Map, Maybe, Nullable, State, Value};
27    pub use crate::widgets::components::events::{
28        Event, KeyCode, KeyEvent, KeyState, MouseButton, MouseEvent, MouseState,
29    };
30    pub use crate::widgets::components::{Component, ComponentId, Context, Emitter, UserEvent};
31    pub use crate::widgets::query::Children;
32}