arcature-cli 2026.2.0

Developer lifecycle CLI for Arcature applications.
Documentation
use serde::{Deserialize, Serialize};

use crate::cli::FrontendArg;

#[derive(Debug, Clone, Copy, Deserialize, Serialize, Eq, PartialEq)]
#[serde(rename_all = "lowercase")]
pub(crate) enum Frontend {
    React,
    Vue,
}

impl Frontend {
    pub(crate) fn as_str(self) -> &'static str {
        match self {
            Self::React => "react",
            Self::Vue => "vue",
        }
    }
}

impl From<FrontendArg> for Frontend {
    fn from(value: FrontendArg) -> Self {
        match value {
            FrontendArg::React => Self::React,
            FrontendArg::Vue => Self::Vue,
        }
    }
}