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,
    }
}
