kardo-core 0.5.0

Core scoring engine for Kardo. Analyzes Git repos for AI-readiness across 5 weighted components. Calibrated on 84 real-world repositories.
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
rust-version = "1.74"
name = "kardo-core"
version = "0.5.0"
build = false
exclude = [
    "tests/fixtures/",
    ".github/",
    "docs/marketing/",
    "benches/",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Core scoring engine for Kardo. Analyzes Git repos for AI-readiness across 5 weighted components. Calibrated on 84 real-world repositories."
homepage = "https://kardo.dev"
documentation = "https://docs.rs/kardo-core"
readme = "README.md"
keywords = [
    "ai-readiness",
    "code-quality",
    "git-analysis",
    "scoring",
    "llm",
]
categories = [
    "development-tools",
    "development-tools::testing",
]
license = "MIT"
repository = "https://github.com/akuroglo/kardo"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
    "--cfg",
    "docsrs",
]

[features]
default = [
    "watcher",
    "llm",
    "embeddings",
]
embeddings = [
    "dep:reqwest",
    "dep:tokio",
]
llm = [
    "dep:reqwest",
    "dep:tokio",
]
tui = [
    "dep:ratatui",
    "dep:crossterm",
]
watcher = ["dep:notify"]

[lib]
name = "kardo_core"
path = "src/lib.rs"

[[example]]
name = "basic_score"
path = "examples/basic_score.rs"

[[example]]
name = "custom_rules"
path = "examples/custom_rules.rs"

[[example]]
name = "json_output"
path = "examples/json_output.rs"

[[example]]
name = "path_to_green"
path = "examples/path_to_green.rs"

[[example]]
name = "quick_scan"
path = "examples/quick_scan.rs"

[[test]]
name = "api_integration"
path = "tests/api_integration.rs"

[[test]]
name = "calibration_test"
path = "tests/calibration_test.rs"

[dependencies.chrono]
version = "0.4"
features = ["serde"]

[dependencies.crossterm]
version = "0.28"
optional = true

[dependencies.dirs]
version = "5"

[dependencies.env_logger]
version = "0.11"

[dependencies.git2]
version = "0.19"

[dependencies.glob]
version = "0.3"

[dependencies.hostname]
version = "0.4"

[dependencies.ignore]
version = "0.4"

[dependencies.log]
version = "0.4"

[dependencies.notify]
version = "7.0"
optional = true

[dependencies.pulldown-cmark]
version = "0.12"

[dependencies.ratatui]
version = "0.29"
optional = true

[dependencies.regex]
version = "1"

[dependencies.reqwest]
version = "0.12"
features = ["json"]
optional = true

[dependencies.rusqlite]
version = "0.32"
features = ["bundled"]

[dependencies.serde]
version = "1"
features = ["derive"]

[dependencies.serde_json]
version = "1"

[dependencies.serde_yaml]
version = "0.9"

[dependencies.sha2]
version = "0.10"

[dependencies.thiserror]
version = "2"

[dependencies.tokio]
version = "1"
features = [
    "macros",
    "rt",
    "rt-multi-thread",
    "sync",
    "io-util",
    "time",
    "process",
]
optional = true

[dependencies.toml]
version = "0.8"

[dependencies.url]
version = "2"

[dependencies.walkdir]
version = "2"

[dependencies.whoami]
version = "1"

[dev-dependencies.criterion]
version = "0.5"
features = ["html_reports"]

[dev-dependencies.tempfile]
version = "3"

[lints.rust]
unsafe_code = "forbid"