mod cli; mod commands; use anyhow::Result; use clap::Parser; use cli::{Cli, Commands}; #[tokio::main] async fn main() -> Result<()> { let cli = Cli::parse(); match cli.command { Commands::Desktop(cmd) => commands::desktop::run(&cmd), Commands::Dev { site } => commands::dev::run(site).await, Commands::Deploy { site } => commands::deploy::run(site).await, Commands::Edf { csv } => commands::edf::run(&csv), } }