Skip to main content

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}