stac-screen-builder
Installation
SKILL.md
Stac Screen Builder
Overview
Use this skill to convert feature requirements into maintainable Stac DSL screens and theme definitions.
Workflow
- Translate user requirements into route names, states, and actions.
- Select widgets using
references/widget-selector.md. - Select actions using
references/action-recipes.md. - Apply style patterns from
references/style-recipes.md. - Apply route semantics from
references/navigation-patterns.md. - Scaffold files using scripts when requested.
Required Inputs
- Target screen name (
snake_caserecommended). - Desired interactions (navigation, network, forms, state changes).
- Whether a theme reference is needed.
Output Contract
- Return valid Stac DSL snippets with
@StacScreenor@StacThemeRef. - Keep generated screen names stable and explicit.
- Use built-in Stac widgets/actions first, then custom extensions if needed.
References
- Read
references/widget-selector.mdto choose layout and interactive widgets. - Read
references/action-recipes.mdfor navigation/form/network/state actions. - Read
references/style-recipes.mdfor color, spacing, and text style patterns. - Read
references/navigation-patterns.mdfor stack-safe navigation actions.
Scripts
scripts/new_screen.py --screen-name <name> --out-dir <path> [--with-navigation]scripts/new_theme_ref.py --theme-name <name> --out-file <path>
Templates
assets/templates/screen.dart.tmplassets/templates/theme_ref.dart.tmpl
Related skills
More from stacdev/stac
stac-quickstart
Help initialize and validate a Stac-enabled Flutter project and ship a first server-driven screen. Use when users ask to set up Stac CLI, run stac init/build/deploy, verify project prerequisites, or troubleshoot first-run setup and missing configuration files.
46stac-custom-extensions
Scaffold and integrate custom Stac widgets and actions with parsers and registration checks. Use when users ask to build new StacParser or StacActionParser implementations, generate custom model classes, or verify parser registration inside Stac.initialize.
44