serenity_builder/lib.rs
1//! [](https://github.com/m1sk9/serenity-builder/actions/workflows/ci.yaml)
2//! [](https://github.com/m1sk9/serenity-builder/actions/workflows/release.yaml)
3//! [](https://github.com/m1sk9/serenity-builder/blob/main/LICENSE)
4//!
5//! A utility library to make Serenity's builder easier to use
6//!
7//! ```toml
8//! [dependencies]
9//! serenity-builder = "0.2"
10//! ```
11//!
12//! # Overview
13//!
14//! Use Serenity's builder with typed_builder for intuitive handling.
15//!
16//! ```rs
17//! // serenity
18//! let embed = CreateEmbed::default()
19//! .title("This is a test title.")
20//! .description("aaaaaaaaa!")
21//! .author(
22//! serenity::builder::CreateEmbedAuthor::new(MOCK_TEXT)
23//! .url(MOCK_URL)
24//! .icon_url(MOCK_URL),
25//! )
26//!
27//! // serenity-builder
28//! let embed = SerenityEmbed::builder()
29//! .title("This is a test title.")
30//! .description("aaaaaaaaa!")
31//! .author_name("m1sk9")
32//! .author_url("https://m1sk9.dev/avatar.png")
33//! .build();
34//! ```
35//!
36//! # Features
37//!
38//! Basic builders (`embed`, `message`) are default features. You can use them immediately by entering the version and crate name with `cargo add` or in Cargo.toml.
39//!
40//! If you only want to use specific features, use the `--features` flag with `cargo add`:
41//!
42//! ```sh
43//! cargo add serenity-builder --no-default-features --features embed
44//! ```
45//!
46//!
47//! # License
48//!
49//! This project is licensed under the Apache License 2.0.
50
51#![deny(clippy::all)]
52#![allow(dead_code)]
53
54#[cfg(feature = "embed")]
55pub mod embed;
56#[cfg(feature = "message")]
57pub mod message;
58
59pub mod model;