tiny_gradient/
lib.rs

1//! `tiny-gradient` colorful gradients for your terminal.
2//!
3//! ### Gradient usage
4//!
5//! ```
6//! use tiny_gradient::{Gradient, GradientStr};
7//!
8//! let text = "Hello World!";
9//!
10//! let colored = text.gradient(Gradient::Forest);
11//!
12//! println!("{}", colored);
13//! ```
14//!
15//! ### RGB usage
16//!
17//! ```
18//! use tiny_gradient::{RGB, GradientStr};
19//!
20//! let text = "Hello World!";
21//!
22//! let colored = text.gradient([RGB::new(0x01, 0x00, 0x00), RGB::new(0xDA, 0x00, 0xFF)]);
23//!
24//! println!("{}", colored);
25//! ```
26//!
27//! ### Generator usage
28//!
29//! ```
30//! use tiny_gradient::{gradient::Gradient, RGB};
31//!
32//! let mut gradient = Gradient::new(RGB::new(0x01, 0x00, 0x00), RGB::new(0xDA, 0x00, 0xFF), 10);
33//!
34//! for color in gradient {
35//!     println!("{:?}", color);
36//! }
37//! ```
38
39#![no_std]
40#![warn(
41    missing_docs,
42    rustdoc::missing_doc_code_examples,
43    rust_2018_idioms,
44    rust_2021_prelude_collisions
45)]
46
47mod display;
48mod gradients;
49mod rgb;
50
51pub mod gradient;
52
53pub use crate::display::{GradientDisplay, GradientStr};
54pub use gradients::Gradient;
55pub use rgb::RGB;