intuitive 0.7.0-alpha.0

a library for building declarative text-based user interfaces
Documentation
//! A collection of components.
//!
//! Refer to the documentation for the [`#[component(..)]`](crate::component) attribute macro for information on how
//! to write custom components.

mod any;
mod embed;
mod empty;
mod fixed;
mod padding;
mod section;
mod stack;
mod text;

pub use self::{
  any::Any,
  embed::Embed,
  empty::Empty,
  fixed::Fixed,
  padding::Padding,
  section::Section,
  stack::{HStack, Stack, VStack},
  text::Text,
};
#[allow(unused)]
use crate::element::Element;
use crate::{element::Any as AnyElement, render::Context};

/// Describes types which can be rendered to an [`Element`].
pub trait Component: Default {
  fn render(&self, context: &mut Context) -> AnyElement;
}