stencila snap
snap
Iterate on themes and styled elements and verify changes - Capture screenshots for documentation or CI - Assert computed CSS properties and layout metrics - Measure page elements for automated testing - Extract resolved CSS custom property (theme token) values - Extract the page's color palette - Compare across device viewports using --device
Usage
stencila snap [OPTIONS] [ROUTE_OR_PATH]Examples
# Snap site root (default route /)
stencila snap --shot homepage.png
# Extract resolved theme token values
stencila snap --tokens
# Extract color palette
stencila snap --palette
# Snap a specific site route with site chrome measurements
stencila snap /docs/guide/ --measure site
# Measure theme-critical regions with grouped color tokens
stencila snap --measure theme --tokens --token-prefix color
# Snap a document file directly
stencila snap ./my-doc.md --shot doc.png
# Assert site chrome properties
stencila snap --assert "exists(stencila-logo)==true"
# Full page dark mode screenshot
stencila snap --dark --full --shot dark-full.png
# Combined: tokens + palette + measurements for theme review
stencila snap --tokens --palette --measure all
# Verify theme token on header
stencila snap --assert "css(stencila-layout > header).backgroundColorHex==#1a1a2e"
# Capture mobile viewport of specific element
stencila snap --device mobile --selector "stencila-article [slot=title]" --shot mobile.png
# Optimize screenshot size for lower image payload cost
stencila snap --shot page.png --resize optimize --max-image-dimension 4096Arguments
[ROUTE_OR_PATH] |
Options
--shot | |
--selector | |
--full | truefalse |
--device | |
--width | |
--height | |
--dpr | |
--resize | neverautooptimizeauto |
--max-image-dimension | |
--light | truefalse |
--dark | truefalse |
--print | truefalse |
--wait-until | network-idle |
--wait-for | |
--delay | |
--measure | |
--tokens | truefalse |
--token-prefix | |
--palette | truefalse |
--assert | |
--url |
--measure
auto | |
document | |
site | |
all | |
header | |
nav | |
main | |
footer | |
theme |
--device
laptop | |
desktop | |
mobile | |
tablet | |
tablet-landscape |
--wait-until
load | |
dom-content-loaded | |
network-idle |