Skip to main content

ratatui_form/
lib.rs

1//! # ratatui_form - Rust TUI Form Builder
2//!
3//! A Rust crate built on RataTUI that makes building terminal forms easy.
4//! Developers import `ratatui_form` and use a fluent builder API to create forms
5//! with pre-built field types and composite blocks (like address).
6//!
7//! ## Example
8//!
9//! ```no_run
10//! use ratatui_form::{Form, AddressBlock};
11//!
12//! let form = Form::builder()
13//!     .title("Shipping Info")
14//!     .text("name", "Full Name").required().done()
15//!     .text("email", "Email").required().done()
16//!     .block(AddressBlock::new("shipping"))
17//!     .build();
18//! ```
19
20pub mod field;
21pub mod block;
22pub mod form;
23pub mod navigation;
24pub mod style;
25pub mod validation;
26
27pub use field::{Field, TextInput, Select, Checkbox};
28pub use block::{Block, AddressBlock, ContactBlock, DateRangeBlock};
29pub use form::{Form, FormBuilder, FormResult};
30pub use navigation::FocusManager;
31pub use style::FormStyle;
32pub use validation::{ValidationError, Validator};
33pub use validation::rules::{Required, Email, MinLength, MaxLength, Pattern};