mirror of
https://github.com/heygen-com/hyperframes.git
synced 2026-09-04 07:19:52 +00:00
feat(cli): add visual inspect command (#480)
* feat: add layout audit command * feat: refine visual inspect command
This commit is contained in:
@@ -277,11 +277,28 @@ When no `visual-style.md` or animation direction is provided, follow [house-styl
|
||||
## Output Checklist
|
||||
|
||||
- [ ] `npx hyperframes lint` and `npx hyperframes validate` both pass
|
||||
- [ ] `npx hyperframes inspect` passes, or every reported overflow is intentionally marked
|
||||
- [ ] Contrast warnings addressed (see Quality Checks below)
|
||||
- [ ] Layout issues addressed (see Quality Checks below)
|
||||
- [ ] Animation choreography verified (see Quality Checks below)
|
||||
|
||||
## Quality Checks
|
||||
|
||||
### Visual Inspect
|
||||
|
||||
`hyperframes inspect` runs the composition in headless Chrome, seeks through the timeline, and maps visual layout issues with timestamps, selectors, bounding boxes, and fix hints. Run it after `lint` and `validate`:
|
||||
|
||||
```bash
|
||||
npx hyperframes inspect
|
||||
npx hyperframes inspect --json
|
||||
```
|
||||
|
||||
Failures usually mean text is spilling out of a bubble/card, a fixed-size label is clipping dynamic copy, or text has moved off the canvas. Fix by increasing container size or padding, reducing font size or letter spacing, adding a real `max-width` so text wraps inside the container, or using `window.__hyperframes.fitTextFontSize(...)` for dynamic copy.
|
||||
|
||||
Use `--samples 15` for dense videos and `--at 1.5,4,7.25` for specific hero frames. Repeated static issues are collapsed by default to avoid flooding agent context. If overflow is intentional for an entrance/exit animation, mark the element or ancestor with `data-layout-allow-overflow`. If a decorative element should never be audited, mark it with `data-layout-ignore`.
|
||||
|
||||
`hyperframes layout` is the compatibility alias for the same check.
|
||||
|
||||
### Contrast
|
||||
|
||||
`hyperframes validate` runs a WCAG contrast audit by default. It seeks to 5 timestamps, screenshots the page, samples background pixels behind every text element, and computes contrast ratios. Failures appear as warnings:
|
||||
|
||||
Reference in New Issue
Block a user