Skip to main content

oseda_cli/
lib.rs

1use clap::{Parser, Subcommand};
2
3pub mod cmd;
4pub mod color;
5pub mod config;
6pub mod github;
7pub mod net;
8pub mod tags;
9pub mod template;
10
11
12/// Oseda Project scafolding CLI
13#[derive(Parser)]
14#[command(name = "oseda")]
15#[command(version = "0.1.0")]
16#[command(about = "oseda project scafolding CLI", long_about = None)]
17#[command(author = "oseda.net")]
18pub struct Cli {
19    /// The subcommand to run
20    #[command(subcommand)]
21    pub command: Commands,
22}
23
24/// Oseda subcommand, represents an action to take on your Oseda project
25#[derive(Subcommand)]
26pub enum Commands {
27    /// Initialize a new Oseda project in the working directory
28    Init(cmd::init::InitOptions),
29    /// Run the Oseda project in the working directory
30    Run,
31    /// Check the Oseda project in the working directory for common errors
32    Check(cmd::check::CheckOptions),
33    /// Deploy your Oseda project to github to add to oseda.net
34    Deploy(cmd::deploy::DeployOptions),
35}