Skip to content

Inspect Template Customization

Use dft inspect eject when you need to customize the inspect UI templates used by /inspect/* routes.

When To Eject

Eject templates when: - You need project-specific layout/content changes to inspect dashboards. - You want those template changes versioned in your repo (faces/inspect/).

Do not eject if built-in templates are sufficient.

Eject Workflow

# Eject one template
 dft inspect eject model

# Eject all inspect templates
 dft inspect eject --all

This writes templates into faces/inspect/ (or --output) and creates .inspect-template-manifest.json in that directory.

The manifest tracks: - source_version: Dataface version at eject time - source_sha256: hash of the built-in template baseline - ejected_at: timestamp for each template

Validate Compatibility

Run:

dft inspect validate-templates

Validation checks: - Manifest exists. - Ejected template files exist. - Whether built-in templates changed since eject.

If validation fails, it means upstream template changes landed and your custom copy needs rebasing.

Rebase Custom Templates

Recommended loop:

  1. Re-eject built-ins to a temporary directory.
  2. Diff your customized faces/inspect/*.yml against temp built-ins.
  3. Merge upstream changes into your custom files.
  4. Re-run dft inspect validate-templates.

Example:

# 1) get current built-ins in temp folder
 dft inspect eject --all -o /tmp/inspect-upstream --force

# 2) compare
 diff -ru /tmp/inspect-upstream faces/inspect

# 3) merge changes in your editor, then validate
 dft inspect validate-templates

Notes

  • The server prefers faces/inspect/{template}.yml when present.
  • If no custom template exists, it falls back to built-in templates.