app-studio
Domo App Studio — Layouts, Pages & Card Management
CUSTOM PALETTE REQUIRED: Never use Domo's native/default color palette. Always select a curated palette from
domo-app-theme/references/color-palettes.md(50 OKLCH palettes across 9 harmony types). Pick a palette suited to the use case or ask the user. Use OKLCH values in pro-code CSS; convert to hex for native cardseries_N_coloroverrides. All App Studio theme colors, pro-code chart colors, banner colors, and card styling must use the chosen palette. See "Custom Color Palette" section under Theme Management.
CLI vs API: The Java CLI has no App Studio commands. All App Studio operations (creating apps, managing views, configuring layouts) require the REST API via curl. This is one area where you must go directly to the API.
Authentication: Use
X-Domo-Authentication: {SID}for all App Studio API calls. Obtain a SID viaget_sid(instance)fromupload_bridge.py(if available in workspace) or via the ryuu token exchange flow (domo login→ refresh token → SID). Developer tokens (X-DOMO-Developer-Token) work for some endpoints but fail on others — SID is universally reliable.
Status: Reverse-engineered from live testing, March 2026 Verified against:
aeroateam-partner.domo.com(app453445400),csibas.domo.com(apps1400847176,2061524048)
Overview
Domo App Studio (formerly "Data Apps") provides a multi-page dashboard builder with a canvas-based layout system. Each app contains multiple views (pages), and each view has a layout that controls where cards are positioned.
Key concepts:
More from stahura/domo-ai-vibe-rules
migrate-lovable
Convert SSR-heavy Lovable/v0 apps into client-only Domo apps.
61domo-js
Use ryuu.js (domo.js) APIs for env, events, navigation, and data calls.
60appdb
Toolkit-first AppDB document CRUD, query operators, and collection wiring.
58html-deck
Build a professional HTML slide deck from source content and convert it to a pixel-perfect PDF. Covers slide architecture, layout patterns, print-safe CSS, Puppeteer PDF conversion, and quality verification. Use when creating presentation decks, converting documents to slide format, or generating PDF decks from HTML.
58data-api
High-level entry skill for Domo data access. Routes detailed query work to dataset-query.
57jsapi-filters
Apply runtime filters to embedded Domo dashboards/cards from the host page via the JS API (MessagePort). Covers dynamic filtering, drill events, filter change listeners, iframe resize, pfilter URL params, overrideFilters, and App Studio appData. Use for any client-side Domo embed interaction. Not for server-side programmatic filters (use programmatic-filters).
57