sdk-features

Maps Lightdash SDK capabilities to host-UI names and their app-code wiring recipes.

6.1k|768|Updated Mar 19, 2021
One-click install
npx skills add https://github.com/lightdash/lightdash --skill sdk-features
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: sdk-features
Source: https://github.com/lightdash/lightdash/tree/main/sandboxes/data-apps/template/.claude/skills/sdk-features
Command: npx skills add https://github.com/lightdash/lightdash --skill sdk-features

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires @lightdash/query-sdk.

What problem does it solve?

Developers building Lightdash data apps struggle to connect features users name from the host UI (like "Inspect data" or drill-down) to the actual SDK registry keys and the wiring code each capability requires.

Core Features & Use Cases

  • Vocabulary Translation: Maps host-UI feature names (Inspect data, drill-down, shareable URLs, Google Sheets export) to SDK registry keys like lineage, drill-down, and url-state.
  • Wiring Recipes: Provides exact implementation patterns for capabilities requiring setup, such as spreading lineage props for Inspect data, initializing the screenshot handler, and configuring VizContextProvider for dashboard tiles.
  • Upgrade Guidance: Explains which capabilities activate automatically after a template upgrade versus which still need deliberate app-code wiring.
  • Use Case: A user asks to enable the "Inspect data" button in their data app; the skill identifies the lineage key and instructs spreading useLightdash lineage props onto every query-bound block's root element.

Quick Start

Ask the assistant to wire up the Inspect data button or another named Lightdash host feature in the current data app.

Frequently Asked Questions about sdk-features

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I enable the Inspect data button in a Lightdash data app?

The Inspect data button maps to the `lineage` registry key and requires wiring. Spread the `lineage` props returned by `useLightdash` onto the root element of every query-bound block so the host can map each block to its query.

How do I add drill-down to a Lightdash chart?

Drill-down is an app-code opt-in via the `drill-down` registry key. Call `drillDown(...)` to derive a more detailed query from a clicked result row, and wire it to click handlers on your charts or table rows.

Which Lightdash SDK features work automatically without wiring?

Calling `createClient()` automatically mounts the capability manifest, the editor element inspector (`inspect`), and the lineage runtime. Core querying via `useLightdash` and `savedChart` also needs no extra wiring.

Why is the Inspect data button disabled in my Lightdash app?

The button stays disabled until the DOM contains `data-ld-query` stamps. The lineage runtime only announces itself after you spread the `lineage` props from `useLightdash` onto query-bound elements.

Does a template upgrade automatically enable all SDK features?

No. An upgrade turns on automatic capabilities but deliberately does not add wiring. Features whose registry entries carry a `wiring` note still require manual implementation in app code.

How do I make a Lightdash app follow light and dark mode?

The SDK toggles the `dark` class on `<html>` automatically. Remove hardcoded dark classes, move dark values into a `.dark` selector with light values on `:root`, and use `useColorScheme()` for colors CSS cannot reach.