# clock — a small Makepad app with two resident faces: the full clock with a # stopwatch and a countdown, and a compact home-widget tile. The WM picks the # face on the same window/swapchain via `HostedView`; one process, one model — # or, hosted in-process, one module instance in its own isolate (src/module.rs). [package] name = "makepad-app-clock" version = "0.1.0" edition = "2021" license = "MIT OR Apache-2.0" default-run = "makepad-app-clock" [[bin]] name = "makepad-app-clock" path = "src/main.rs" required-features = ["standalone"] [lib] name = "makepad_app_clock" path = "src/lib.rs" [features] default = ["tweaker", "standalone"] # The design overlay (Shift+F10 with the dev overlays on). On for development # builds; the Builder's releases build without it (--no-default-features). tweaker = ["dep:makepad-widgets-tweaker", "makepad-widgets/data", "makepad-widgets/dock", "makepad-widgets/fab"] # The standalone window: the F10 overlay and the port toward it. A host # that links the MODULE (makepad-app-wm) leaves this off and gets the lib only. standalone = ["dep:makepad-app-aichat", "dep:makepad-wm-api"] # The machine's own model in this window's chat (Qwen on the local # runtime). Off by default: the chat offers the Claude Code / Codex CLIs, # Claude Desktop (MCP) and the Claude API. `--features localai` adds it. localai = ["makepad-app-aichat?/localai"] [dependencies] makepad-widgets = { path = "../../widgets", default-features = false } makepad-widgets-tweaker = { path = "../../widgets/families/tweaker", optional = true } makepad-civil-time = { path = "../../libs/civil_time" } # The assistant: the F10 overlay in this window, and the clock's one tool. makepad-app-aichat = { path = "../aichat", default-features = false, features = ["engine"], optional = true } # The window manager's vocabulary for the standalone window: the bar's # title and the polite close (the module has no window of its own). makepad-wm-api = { path = "../../libs/wm_api", optional = true } 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" }