nemo_plugin/lib.rs
1//! Nemo Plugin Development Kit
2//!
3//! This crate provides convenient builders and utilities for developing Nemo plugins.
4//! It builds on top of `nemo-plugin-api` to offer a fluent, type-safe API for creating
5//! UI layouts, components, and templates.
6//!
7//! # Example
8//!
9//! ```rust
10//! use nemo_plugin::prelude::*;
11//!
12//! // Build a simple UI layout
13//! let layout = Panel::new()
14//! .padding(16)
15//! .border(2)
16//! .width(300)
17//! .child("title", Label::new("My Plugin").size("xl"))
18//! .child("input", Input::new()
19//! .value("default")
20//! .on_change("on_input_change"))
21//! .build();
22//! ```
23
24pub mod builder;
25pub mod components;
26pub mod containers;
27pub mod value;
28
29/// Re-export nemo-plugin-api for convenience
30pub use nemo_plugin_api::*;
31
32/// Prelude module containing commonly used types and traits
33pub mod prelude {
34 pub use crate::builder::*;
35 pub use crate::components::*;
36 pub use crate::containers::*;
37 pub use crate::value::*;
38 pub use nemo_plugin_api::*;
39}