Images
dodeca automatically processes images in your content into responsive, modern formats.
How it works
When you use a standard markdown image:
markdown
dodeca generates:
- Multiple widths: 320, 640, 960, 1280, and 1920 pixels (only sizes smaller than the original, plus the original size)
- Two modern formats: JPEG XL (
.jxl) and WebP (.webp) - Thumbhash placeholder: A tiny inline data URL for instant loading
The markdown image becomes a <picture> element with <source> sets for each format and a srcset with all available widths.
Supported input formats
PNG, JPEG, GIF, WebP, and JPEG XL.
SVGs are not rasterized — they're processed separately (see SVG Optimization).
Output
Every image variant gets a content-hashed filename and is stored in the build cache (.cache/blobs/). On subsequent builds, only changed images are reprocessed.
No configuration needed
Image processing is automatic. There's nothing to configure — drop images into your content or static/ directory and reference them normally.