prelude_epilogue/
prelude_epilogue.rs

1use derive_wizard::Wizard;
2
3#[derive(Debug, Wizard)]
4#[prelude(
5    "Welcome to the Server Configuration Wizard!\nThis wizard will help you configure your server settings."
6)]
7#[epilogue("Configuration complete! Your server is ready to start.")]
8struct ServerConfig {
9    #[prompt("Server name:")]
10    name: String,
11
12    #[prompt("Port number:")]
13    #[min(1024)]
14    #[max(65535)]
15    port: i32,
16
17    #[prompt("Enable SSL:")]
18    ssl: bool,
19}
20
21fn main() {
22    let config = ServerConfig::wizard_builder().build().unwrap();
23    println!("\n=== Server Configuration ===");
24    println!("{:#?}", config);
25}