# sheets — a spreadsheet as a plain full-window Makepad app, part of the # Makepad family (wm hosts it as a tile; terminal/browser/files/task are # siblings). The grid is the stock `DataGrid` widget; everything above it — # the formula engine, the dependency graph, formats, undo, CSV — lives here. # # sheets runs standalone, and unmodified inside makepad-app-wm / Studio tiles via # the shared --stdin-loop client runtime every Makepad app has. [package] name = "makepad-app-sheets" version = "0.1.0" edition = "2021" license = "MIT OR Apache-2.0" default-run = "makepad-app-sheets" [[bin]] name = "makepad-app-sheets" path = "src/main.rs" required-features = ["standalone"] [lib] name = "makepad_app_sheets" 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"] demo = [] # 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, features = ["data"] } makepad-widgets-tweaker = { path = "../../widgets/families/tweaker", optional = true } # The assistant: the F10 overlay in this window, and the bounded sheet tools # exposed to it (src/ai.rs). 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" }