[workspace]
members = ["apic-core", "apic-gui"]
# Bare `cargo build`/`test` operate on the bin and the core lib (and run
# apic-core's unit tests). apic-gui is a workspace member but is left out of
# default-members so a plain `cargo build` does not pull in the GUI toolkit and
# its native deps; CI builds it explicitly via `--workspace`.
default-members = [".", "apic-core"]

[package]
name = "apic-cli"
version = "0.3.5"
edition = "2024"
rust-version = "1.88"
authors = ["Rizki Rakasiwi"]
description = "A lightweight, Git-friendly CLI tool for designing and collaborating on API contracts "
license = "MIT"
readme = "README.md"
repository = "https://github.com/rizukirr/apic"
homepage = "https://github.com/rizukirr/apic"
keywords = ["api", "contract", "cli", "rest", "json"]
categories = ["command-line-utilities", "development-tools"]
exclude = ["/.github", "/.apic", "/example"]

[[bin]]
name = "apic"
path = "src/main.rs"

[dependencies]
apic-core = { path = "apic-core", version = "0.3.5" }
clap = { version = "4.6.1", features = ["derive"] }
crossterm = "0.29.0"
libc = "0.2"
ratatui = "0.30"
ratatui-textarea = "0.9"
serde = { version = "1.0.228", features = ["derive"] }
serde_json = { version = "1.0.150", features = ["preserve_order"] }

[dev-dependencies]
assert_cmd = "2"
predicates = "3"
