72 lines
3.2 KiB
TOML
72 lines
3.2 KiB
TOML
[package]
|
|
name = "makepad-app-route"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
description = "AI-driven voice route/trip planner on MapView (see route.md)"
|
|
license = "MIT OR Apache-2.0"
|
|
default-run = "route"
|
|
|
|
# route as a library: the map, the trip, turn-by-turn navigation, the
|
|
# layers, the side panel and the assistant's tools, around one root widget
|
|
# (`RouteView{}`, src/view.rs) — and the module (src/module.rs) a host such
|
|
# as the window manager seats in-process, one instance per isolate. The
|
|
# standalone binary (src/main.rs, feature `standalone`) is the same crate
|
|
# with a `Window` around the view and the AI port toward the desktop.
|
|
[lib]
|
|
name = "makepad_app_route"
|
|
path = "src/lib.rs"
|
|
|
|
[[bin]]
|
|
name = "route"
|
|
path = "src/main.rs"
|
|
required-features = ["standalone"]
|
|
|
|
[features]
|
|
dynamic-module = []
|
|
default = ["standalone", "native"]
|
|
# The standalone window (src/main.rs). A host that links the module
|
|
# leaves it off and gets the lib only.
|
|
standalone = []
|
|
# The in-app brain: the local Qwen dispatcher, the voice gate and whisper
|
|
# mic, spoken replies, the cloud escalation agent, image search — the
|
|
# desktop with models on disk. Includes the first-run test-map bake. With
|
|
# it off the panel's tools still run (over the host's assistant bus) and
|
|
# the prompt line answers that no assistant is linked.
|
|
native = [
|
|
"bake",
|
|
"makepad-widgets/voice",
|
|
"makepad-converse/tts",
|
|
"makepad-converse/local-llm",
|
|
"dep:makepad-ai-hub",
|
|
"dep:makepad-strict-json",
|
|
"dep:makepad-mbtile-reader",
|
|
]
|
|
# The first-run download + bake of the Amsterdam test map (src/testmap.rs).
|
|
bake = ["dep:makepad-map-build"]
|
|
# The hosted demo (nav::api): the site API instead of the native data plane.
|
|
demo = ["standalone"]
|
|
|
|
[dependencies]
|
|
makepad-widgets = { path = "../../widgets", version = "2.0.0", features = ["maps"] }
|
|
makepad-wm-theme = { path = "../../libs/wm_theme" }
|
|
makepad-ai-services = { path = "../../libs/ai/services" }
|
|
# The module contract: what the window manager seats in-process (src/module.rs).
|
|
makepad-app-module = { path = "../../libs/app_module" }
|
|
makepad-map-nav = { path = "../../libs/map_nav" } # M1: route.* tools (search + A* graph)
|
|
makepad-micro-serde = { path = "../../libs/micro_serde", version = "1.0.0" }
|
|
makepad-map-build = { path = "../../libs/map_build", features = ["faces"], optional = true } # first run: download + bake a test map
|
|
makepad-geodata = { path = "../../libs/geodata" } # shared terrain renderer; native also uses geo/radar
|
|
makepad-mbtile-reader = { path = "../../libs/mbtile_reader", optional = true } # terrain drape landcover source
|
|
# The agent seam only (tool definitions for the broker); the voice and the
|
|
# local filter model come in with `native`.
|
|
makepad-converse = { path = "../../libs/converse", default-features = false }
|
|
|
|
makepad-ai-hub = { path = "../../libs/ai/hub", default-features = false, features = ["llm"], optional = true } # M2: local dispatcher LLM
|
|
|
|
makepad-strict-json = { path = "../../libs/strict_json", optional = true } # claude_agent tool schemas
|
|
|
|
# Planned wiring (see route.md milestones) — enable as each phase lands:
|
|
# makepad-tesla = { path = "../../libs/tesla" } # M5: vehicle SoC / charge state
|
|
|
|
[dev-dependencies]
|
|
makepad-test = { path = "../../libs/makepad_test", version = "0.1.0" }
|