The old JS ppc repo had a working habitica integration. This ports all that functionality into the new Rust-based marts package so it can run natively without the Deno/JS runtime dependency. Changes: - habitica.rs: make api_request public, add get_tasks() and delete_task() convenience methods, register config opts - c2vi/mod.rs: full rewrite implementing all 9 CLI commands (bed, clearTodos, listTodos, buyHealthPotion, addActionItems, skip, dumpLog, listDailies, printTask) with SQLite persistence via rusqlite - lib.rs: wire c2vi module into marts exports - ppc main.rs: register c2vi part at startup - Cargo.toml: add rusqlite dependency with bundled feature Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
30 lines
962 B
TOML
30 lines
962 B
TOML
[package]
|
|
name = "marts"
|
|
description = "marts = mize_parts - parts collection of the Mize framework"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
|
|
[dependencies]
|
|
clap = { version = "4.5.59", optional = true, features = ["string"] }
|
|
flume = "0.12.0"
|
|
futures = "0.3.32"
|
|
mize = { path = "../mize/", default-features = false }
|
|
tokio = "1.49.0"
|
|
# https://github.com/rscarson/rustyscript/pull/415
|
|
rustyscript = { git = 'https://github.com/rscarson/rustyscript', rev = 'e39529eac2c5d37cfcbb7d7d63da7264d7a5afdb', optional = true }
|
|
deno_core = { version = "0.380.1", optional = true }
|
|
chrono = "0.4.44"
|
|
reqwest = { version = "0.13.2", features = ["blocking", "json"] }
|
|
serde = "1.0.228"
|
|
serde_json = "1.0.149"
|
|
rusqlite = { version = "0.31", features = ["bundled"], optional = true }
|
|
|
|
[features]
|
|
default = ["target-os"]
|
|
target-os = [ "clap", "mize/target-os", "deno_core", "rustyscript", "rusqlite" ]
|
|
target-wasm = [ "mize/target-wasm" ]
|
|
clap = ["dep:clap"]
|
|
|
|
[lib]
|
|
path = "lib.rs"
|