{
  "spec_version": 2,
  "extractor_version": "0.2.0",
  "url": "https://astro.build/",
  "final_url": "https://astro.build/",
  "slug": "astro.build",
  "captured_at": "2026-11-12T15:22:50.816Z",
  "title": "Astro",
  "meta": {
    "description": "Astro builds fast content sites, powerful web applications, dynamic server APIs, and everything in-between.",
    "og_image": "https://astro.build/og/astro.jpg",
    "og_title": "Astro",
    "theme_color": "#8D46E7",
    "lang": "en",
    "generator": "Astro v7.3.5"
  },
  "capture": {
    "variants": [
      {
        "name": "desktop-light",
        "width": 1440,
        "height": 900,
        "scheme": "light",
        "page_height": 8870,
        "full": "screens/desktop-light-full.png",
        "fold": "screens/desktop-light-fold.png"
      },
      {
        "name": "desktop-dark",
        "width": 1440,
        "height": 900,
        "scheme": "dark",
        "page_height": 8870,
        "full": "screens/desktop-dark-full.png",
        "fold": "screens/desktop-dark-fold.png"
      },
      {
        "name": "mobile-light",
        "width": 390,
        "height": 844,
        "scheme": "light",
        "page_height": 12288,
        "full": "screens/mobile-light-full.png",
        "fold": "screens/mobile-light-fold.png"
      },
      {
        "name": "mobile-dark",
        "width": 390,
        "height": 844,
        "scheme": "dark",
        "page_height": 12288,
        "full": "screens/mobile-dark-full.png",
        "fold": "screens/mobile-dark-fold.png"
      }
    ],
    "status": 200,
    "warnings": [],
    "element_count": 886,
    "render_quality": {
      "status": "ok",
      "reasons": [],
      "screenshot": "ok",
      "screenshot_reasons": []
    },
    "worker_os": "macos"
  },
  "color": {
    "scheme": "dark",
    "palette": [
      {
        "hex": "#060913",
        "oklch": [
          0.142,
          0.023,
          268.4
        ],
        "role": "bg",
        "area": 0.4153,
        "uses": {
          "bg": 1,
          "text": 0,
          "border": 0,
          "fill": 0
        },
        "variants": [
          "#030712"
        ]
      },
      {
        "hex": "#0C0F19",
        "oklch": [
          0.171,
          0.022,
          271.1
        ],
        "role": "surface",
        "area": 0.2057,
        "uses": {
          "bg": 0.997,
          "text": 0,
          "border": 0,
          "fill": 0.003
        },
        "variants": [
          "#0D0F14"
        ]
      },
      {
        "hex": "#1A3E57",
        "oklch": [
          0.35,
          0.06,
          241.7
        ],
        "role": "other",
        "area": 0.061,
        "uses": {
          "bg": 1,
          "text": 0,
          "border": 0,
          "fill": 0
        }
      },
      {
        "hex": "#3245FF4D",
        "oklch": [
          0.519,
          0.268,
          268.7
        ],
        "role": "other",
        "area": 0.045,
        "uses": {
          "bg": 0,
          "text": 0,
          "border": 0,
          "fill": 1
        },
        "on_bg": "#131B5A",
        "variants": [
          "#3245FF40"
        ]
      },
      {
        "hex": "#BC52EE1A",
        "oklch": [
          0.641,
          0.233,
          313
        ],
        "role": "other",
        "area": 0.0449,
        "uses": {
          "bg": 0,
          "text": 0,
          "border": 0,
          "fill": 1
        },
        "on_bg": "#181029"
      },
      {
        "hex": "#40DEBF4D",
        "oklch": [
          0.812,
          0.136,
          176.4
        ],
        "role": "other",
        "area": 0.0408,
        "uses": {
          "bg": 0,
          "text": 0,
          "border": 0,
          "fill": 1
        },
        "on_bg": "#174947"
      },
      {
        "hex": "#334BA94D",
        "oklch": [
          0.45,
          0.153,
          268.7
        ],
        "role": "other",
        "area": 0.0408,
        "uses": {
          "bg": 0,
          "text": 0,
          "border": 0,
          "fill": 1
        },
        "on_bg": "#131D40"
      },
      {
        "hex": "#BFC1C9",
        "oklch": [
          0.812,
          0.011,
          274.9
        ],
        "role": "muted",
        "area": 0.0298,
        "uses": {
          "bg": 0,
          "text": 1,
          "border": 0,
          "fill": 0
        }
      },
      {
        "hex": "#F2F6FA",
        "oklch": [
          0.971,
          0.007,
          247.9
        ],
        "role": "other",
        "area": 0.0153,
        "uses": {
          "bg": 0,
          "text": 1,
          "border": 0,
          "fill": 0
        },
        "variants": [
          "#EEF0F9"
        ]
      },
      {
        "hex": "#FFFFFF",
        "oklch": [
          1,
          0,
          0
        ],
        "role": "text",
        "area": 0.013,
        "uses": {
          "bg": 0.153,
          "text": 0.784,
          "border": 0,
          "fill": 0.063
        },
        "css_var": "--tw-ring-offset-color"
      },
      {
        "hex": "#D83333",
        "oklch": [
          0.58,
          0.201,
          26.2
        ],
        "role": "other",
        "area": 0.0083,
        "uses": {
          "bg": 0.011,
          "text": 0,
          "border": 0,
          "fill": 0.989
        }
      },
      {
        "hex": "#0D0F144D",
        "oklch": [
          0.169,
          0.011,
          268
        ],
        "role": "other",
        "area": 0.0082,
        "uses": {
          "bg": 1,
          "text": 0,
          "border": 0,
          "fill": 0
        },
        "on_bg": "#080B13"
      },
      {
        "hex": "#F041FF",
        "oklch": [
          0.704,
          0.286,
          324.5
        ],
        "role": "other",
        "area": 0.0082,
        "uses": {
          "bg": 0,
          "text": 0,
          "border": 0,
          "fill": 1
        }
      },
      {
        "hex": "#000000",
        "oklch": [
          0,
          0,
          0
        ],
        "role": "other",
        "area": 0.008,
        "uses": {
          "bg": 0,
          "text": 0,
          "border": 0,
          "fill": 1
        }
      },
      {
        "hex": "#07040F",
        "oklch": [
          0.121,
          0.028,
          297.8
        ],
        "role": "other",
        "area": 0.0072,
        "uses": {
          "bg": 1,
          "text": 0,
          "border": 0,
          "fill": 0
        }
      },
      {
        "hex": "#343841",
        "oklch": [
          0.34,
          0.017,
          266.4
        ],
        "role": "other",
        "area": 0.0065,
        "uses": {
          "bg": 0.985,
          "text": 0,
          "border": 0.015,
          "fill": 0
        },
        "css_var": "--ec-sbThumbCol"
      }
    ],
    "roles": {
      "bg": "#060913",
      "text": "#FFFFFF",
      "muted": "#BFC1C9",
      "surface": "#0C0F19",
      "accent": "#FFFFFF",
      "border": "#858B9833"
    },
    "accent_strategy": "monochrome",
    "contrast": {
      "text_on_bg": 19.88,
      "muted_on_bg": 11.06,
      "accent_on_bg": 19.88
    },
    "gradients": [
      "linear-gradient(270deg, rgba(188, 82, 238, 0.1) 100%, rgba(50, 69, 255, 0.3) 100%)",
      "linear-gradient(270deg, rgba(64, 222, 191, 0.3) 0%, rgba(51, 75, 169, 0.3) 100%)",
      "linear-gradient(66.77deg, rgb(216, 51, 51) 0%, rgb(240, 65, 255) 100%)",
      "linear-gradient(83.21deg, rgb(50, 69, 255) 0%, rgb(184, 69, 237) 100%)"
    ],
    "theme_color": "#8D46E7",
    "dark_mode": {
      "responds_to_prefers_color_scheme": false
    },
    "declared_accents": [],
    "accent_detail": {
      "method": "cta-monochrome",
      "cta": "#FFFFFF",
      "candidates": [
        {
          "hex": "#61DAFB",
          "controls": 1,
          "links": 0,
          "text": 1,
          "elements": 3,
          "fills": 0,
          "area": 0.00072,
          "score": 18.5,
          "strong": false
        },
        {
          "hex": "#D83333",
          "controls": 0,
          "links": 0,
          "text": 0,
          "elements": 4,
          "fills": 9,
          "area": 0.00829,
          "score": 15.5,
          "strong": false
        },
        {
          "hex": "#6B7AAB",
          "controls": 0,
          "links": 0,
          "text": 0,
          "elements": 0,
          "fills": 31,
          "area": 0.0014,
          "score": 13.2,
          "strong": false
        },
        {
          "hex": "#4AF2C8",
          "controls": 0,
          "links": 0,
          "text": 1,
          "elements": 1,
          "fills": 3,
          "area": 0.00158,
          "score": 11.6,
          "strong": false
        },
        {
          "hex": "#F041FF",
          "controls": 0,
          "links": 0,
          "text": 0,
          "elements": 0,
          "fills": 9,
          "area": 0.0082,
          "score": 11.5,
          "strong": false
        },
        {
          "hex": "#3245FF",
          "controls": 0,
          "links": 0,
          "text": 0,
          "elements": 0,
          "fills": 10,
          "area": 0.00503,
          "score": 11.2,
          "strong": false
        }
      ]
    },
    "highlights": [
      {
        "hex": "#61DAFB",
        "elements": 3
      },
      {
        "hex": "#6B7AAB",
        "elements": 31
      }
    ]
  },
  "type": {
    "families": [
      {
        "family": "SF Pro (system-ui)",
        "css_family": "ui-sans-serif",
        "role": "body",
        "roles": [
          "body"
        ],
        "weights": [
          300,
          400,
          500,
          600,
          700
        ],
        "share": 0.588,
        "kind": "system",
        "classification": "sans",
        "stack": "ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\"",
        "resolved_on": "macos",
        "internal_names": [
          ".SF NS"
        ]
      },
      {
        "family": "Obviously",
        "css_family": "Obviously",
        "role": "display",
        "roles": [
          "display"
        ],
        "weights": [
          300,
          700
        ],
        "share": 0.327,
        "kind": "webfont",
        "classification": "sans",
        "foundry": null,
        "stack": "Obviously, obviously-fallback, system-ui, sans-serif",
        "files": [
          "https://astro.build/fonts/Obviously.woff2?v=1"
        ],
        "internal_names": [
          "Obviously Variable"
        ]
      },
      {
        "family": "Menlo",
        "css_family": "ui-monospace",
        "role": "mono",
        "roles": [
          "mono"
        ],
        "weights": [
          300,
          400
        ],
        "share": 0.063,
        "kind": "system",
        "classification": "mono",
        "stack": "ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace",
        "resolved_on": "macos",
        "internal_names": [
          "Menlo"
        ]
      },
      {
        "family": "Inter",
        "css_family": "Inter",
        "role": "other",
        "roles": [
          "other"
        ],
        "weights": [
          200,
          400
        ],
        "share": 0.021,
        "kind": "webfont",
        "classification": "sans",
        "foundry": null,
        "stack": "Inter, inter-fallback, system-ui, sans-serif",
        "files": [
          "https://astro.build/fonts/Inter.woff2?v=1"
        ],
        "internal_names": [
          "Inter Variable"
        ]
      }
    ],
    "declared_unused": [
      {
        "family": "MDIO",
        "css_family": "MDIO",
        "face_status": "loaded",
        "css_mentions": 4
      }
    ],
    "scale_px": [
      12,
      13.5,
      14,
      16,
      18,
      20,
      30,
      36,
      48
    ],
    "ratio": 1.246,
    "body_size": 16,
    "root_size": 16,
    "line_height": 1.5,
    "display_size": 48,
    "tracking_display": "0em",
    "case": "sentence",
    "styles": [
      {
        "name": "display",
        "family": "Obviously",
        "size_px": 48,
        "weight": 700,
        "line_height": 1.1,
        "letter_spacing_em": 0,
        "sample": "The web framework for content-driven web"
      },
      {
        "name": "headline",
        "family": "Obviously",
        "size_px": 36,
        "weight": 300,
        "line_height": 1.111,
        "letter_spacing_em": 0,
        "sample": "is a JavaScript web framework optimized "
      },
      {
        "name": "body",
        "family": "SF Pro (system-ui)",
        "size_px": 16,
        "weight": 300,
        "line_height": 1.5,
        "letter_spacing_em": 0,
        "sample": "Used by the largest companies around the"
      },
      {
        "name": "body-sm",
        "family": "Menlo",
        "size_px": 13.6,
        "weight": 400,
        "line_height": 1.65,
        "letter_spacing_em": 0,
        "sample": "'../components/BuyButton.jsx'"
      }
    ],
    "mobile": {
      "body_size": 16,
      "display_size": 30
    }
  },
  "space": {
    "scale_px": [
      3,
      4,
      8,
      12,
      16,
      20,
      21.5,
      24,
      32,
      48,
      80
    ],
    "base": 8,
    "base_fit": 0.73,
    "density": 0.071,
    "section_padding_px": 147
  },
  "shape": {
    "radii_px": [
      8,
      12,
      16,
      9999
    ],
    "dominant_radius": 16,
    "border_usage": "hairline",
    "border_width_px": 1
  },
  "depth": {
    "shadows": [
      "rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.1) 0px 1px 2px -1px",
      "rgba(24, 24, 27, 0.03) 0px 5px 2px 0px, rgba(24, 24, 27, 0.1) 0px 3px 2px 0px, rgba(24, 24, 27, 0.17) 0px 1px 1px 0px, rgba(24, 24, 27, 0.2) 0px 0px 1px 0px"
    ],
    "style": "subtle"
  },
  "layout": {
    "container_px": 1280,
    "columns": 2,
    "hero": "centered-over-media",
    "nav": "top-static+transparent",
    "page_height_px": 8870,
    "section_count": 11
  },
  "motion": {
    "transitions": 104,
    "easing": "cubic-bezier(0.4, 0, 0.2, 1)",
    "durations_ms": [
      150,
      300,
      500,
      1500
    ],
    "animations": [
      "marquee"
    ]
  },
  "components": {
    "button-primary": {
      "backgroundColor": "#FFFFFF",
      "textColor": "#00000000",
      "rounded": "9999px",
      "padding": "8px 16px",
      "height": "42px",
      "fontFamily": "SF Pro (system-ui)",
      "fontSize": "16px",
      "fontWeight": 400,
      "sample": "Get Started"
    },
    "button-secondary": {
      "textColor": "#BFC1C9",
      "rounded": "9999px",
      "padding": "8px 16px",
      "height": "42px",
      "fontFamily": "SF Pro (system-ui)",
      "fontSize": "16px",
      "fontWeight": 400,
      "border": "1px solid #858B984D",
      "sample": "Integrate your favorite framew"
    },
    "card": {
      "rounded": "16px",
      "padding": "0px",
      "count": 13,
      "backgroundColor": "#0C0F19",
      "border": "1px solid #858B9833"
    },
    "input": {
      "rounded": "8px",
      "height": "40px",
      "padding": "4px 12px",
      "backgroundColor": "#060913",
      "border": "1px solid #23262D"
    }
  },
  "imagery": {
    "media_share": 0.502,
    "dominant_colors": [
      {
        "hex": "#110B22",
        "share": 0.346
      },
      {
        "hex": "#1E1B2E",
        "share": 0.146
      },
      {
        "hex": "#181464",
        "share": 0.12
      },
      {
        "hex": "#51289C",
        "share": 0.106
      },
      {
        "hex": "#343641",
        "share": 0.07
      },
      {
        "hex": "#2D4B68",
        "share": 0.059
      }
    ],
    "has_photography": null,
    "has_illustration": null
  },
  "stack": [
    "astro",
    "tailwind",
    "mintlify",
    "cloudflare"
  ],
  "sections": [
    {
      "index": 0,
      "kind": "nav",
      "kind_source": "dom",
      "confidence": 0.9,
      "bbox": {
        "x": 80,
        "y": 0,
        "w": 1280,
        "h": 80
      },
      "bg": "#060913",
      "crop": "img/section-00-nav.webp"
    },
    {
      "index": 1,
      "kind": "hero",
      "kind_source": "dom",
      "confidence": 0.9,
      "bbox": {
        "x": 0,
        "y": 80,
        "w": 1440,
        "h": 764
      },
      "heading": "The web framework for content-driven websites",
      "bg": "#060913",
      "crop": "img/section-01-hero.webp"
    },
    {
      "index": 2,
      "kind": "features",
      "kind_source": "dom",
      "confidence": 0.5,
      "bbox": {
        "x": 80,
        "y": 844,
        "w": 1280,
        "h": 542
      },
      "heading": "Customizable",
      "bg": "#060913",
      "crop": "img/section-02-features.webp"
    },
    {
      "index": 3,
      "kind": "logos",
      "kind_source": "dom",
      "confidence": 0.8,
      "bbox": {
        "x": 80,
        "y": 1386,
        "w": 1280,
        "h": 754
      },
      "heading": "Astro Islands",
      "bg": "#060913",
      "crop": "img/section-03-logos.webp"
    },
    {
      "index": 4,
      "kind": "code-sample",
      "kind_source": "dom",
      "confidence": 0.6,
      "bbox": {
        "x": 0,
        "y": 2140,
        "w": 1440,
        "h": 931
      },
      "heading": "Snapback Cap",
      "bg": "#060913",
      "crop": "img/section-04-code-sample.webp"
    },
    {
      "index": 5,
      "kind": "features",
      "kind_source": "dom",
      "confidence": 0.5,
      "bbox": {
        "x": 112,
        "y": 3071,
        "w": 1216,
        "h": 1643
      },
      "heading": "Fully Featured",
      "bg": "#060913",
      "crop": "img/section-05-features.webp"
    },
    {
      "index": 6,
      "kind": "gallery",
      "kind_source": "dom",
      "confidence": 0.5,
      "bbox": {
        "x": 0,
        "y": 4713,
        "w": 1440,
        "h": 904
      },
      "heading": "Themes",
      "bg": "#060913",
      "crop": "img/section-06-gallery.webp"
    },
    {
      "index": 7,
      "kind": "features",
      "kind_source": "dom",
      "confidence": 0.5,
      "bbox": {
        "x": 0,
        "y": 5617,
        "w": 1440,
        "h": 499
      },
      "heading": "Get professional Astro support",
      "bg": "#060913",
      "crop": "img/section-07-features.webp"
    },
    {
      "index": 8,
      "kind": "feature-detail",
      "kind_source": "dom",
      "confidence": 0.45,
      "bbox": {
        "x": 112,
        "y": 6116,
        "w": 1216,
        "h": 850
      },
      "heading": "Start building with Astro today",
      "bg": "#060913",
      "crop": "img/section-08-feature-detail.webp"
    },
    {
      "index": 9,
      "kind": "feature-detail",
      "kind_source": "dom",
      "confidence": 0.45,
      "bbox": {
        "x": 0,
        "y": 6966,
        "w": 1440,
        "h": 1474
      },
      "heading": "Astro is free, open-source software made possible by these wonderful sponsors",
      "bg": "#060913",
      "crop": "img/section-09-feature-detail.webp"
    },
    {
      "index": 10,
      "kind": "footer",
      "kind_source": "dom",
      "confidence": 0.75,
      "bbox": {
        "x": 0,
        "y": 8440,
        "w": 1440,
        "h": 430
      },
      "heading": "Legal",
      "bg": "#060913",
      "crop": "img/section-10-footer.webp"
    }
  ],
  "images": {
    "manifest": "img/manifest.json",
    "count": 15
  },
  "review": {
    "threshold": 0.7,
    "needs_review": [
      "color.accent_strategy",
      "layout.columns",
      "layout.hero",
      "layout.section_count",
      "sections[].kind",
      "space.section_padding_px"
    ],
    "vision": "not-run"
  },
  "provenance": {
    "color.roles.bg": {
      "source": "dom",
      "confidence": 0.95
    },
    "color.roles.text": {
      "source": "dom",
      "confidence": 0.92
    },
    "color.roles.muted": {
      "source": "dom",
      "confidence": 0.82
    },
    "color.roles.surface": {
      "source": "dom",
      "confidence": 0.78
    },
    "color.roles.border": {
      "source": "dom",
      "confidence": 0.75
    },
    "color.roles.accent": {
      "source": "dom",
      "confidence": 0.72,
      "note": "monochrome page; fill of the primary button; sparse chromatic highlights: #61DAFB, #6B7AAB"
    },
    "color.accent_strategy": {
      "source": "dom",
      "confidence": 0.6,
      "note": "hue count over chromatic colors; product mockups rendered in the DOM inflate it",
      "needs_review": true
    },
    "color.palette": {
      "source": "dom",
      "confidence": 0.9
    },
    "color.declared_accents": {
      "source": "dom",
      "confidence": 0.95
    },
    "color.dark_mode": {
      "source": "dom",
      "confidence": 0.9
    },
    "color.contrast": {
      "source": "dom",
      "confidence": 0.9
    },
    "color.gradients": {
      "source": "dom",
      "confidence": 0.85
    },
    "type.families": {
      "source": "dom",
      "confidence": 0.72,
      "note": "SF Pro (system-ui) resolved from a system stack on a macos worker; other visitors see their own system font"
    },
    "type.families[].roles": {
      "source": "dom",
      "confidence": 0.85
    },
    "type.declared_unused": {
      "source": "dom",
      "confidence": 0.95
    },
    "type.scale_px": {
      "source": "dom",
      "confidence": 0.9
    },
    "type.body_size": {
      "source": "dom",
      "confidence": 0.85
    },
    "type.display_size": {
      "source": "dom",
      "confidence": 0.85
    },
    "type.styles": {
      "source": "dom",
      "confidence": 0.8
    },
    "type.ratio": {
      "source": "dom",
      "confidence": 0.7,
      "note": "geometric fit over the scale above body size"
    },
    "type.case": {
      "source": "dom",
      "confidence": 0.75
    },
    "type.line_height": {
      "source": "dom",
      "confidence": 0.85
    },
    "type.tracking_display": {
      "source": "dom",
      "confidence": 0.85
    },
    "space.base": {
      "source": "dom",
      "confidence": 0.83,
      "note": "share of paddings/margins/gaps on the base: 0.73"
    },
    "space.scale_px": {
      "source": "dom",
      "confidence": 0.85
    },
    "space.section_padding_px": {
      "source": "dom",
      "confidence": 0.65,
      "needs_review": true
    },
    "space.density": {
      "source": "dom",
      "confidence": 0.85
    },
    "shape.radii_px": {
      "source": "dom",
      "confidence": 0.88
    },
    "shape.dominant_radius": {
      "source": "dom",
      "confidence": 0.8
    },
    "shape.border_usage": {
      "source": "dom",
      "confidence": 0.8
    },
    "depth.shadows": {
      "source": "dom",
      "confidence": 0.9
    },
    "depth.style": {
      "source": "dom",
      "confidence": 0.75
    },
    "layout.container_px": {
      "source": "dom",
      "confidence": 0.8
    },
    "layout.columns": {
      "source": "dom",
      "confidence": 0.6,
      "note": "most common grid track count; layout grids and card grids are not separated",
      "needs_review": true
    },
    "layout.nav": {
      "source": "dom",
      "confidence": 0.78
    },
    "layout.hero": {
      "source": "dom",
      "confidence": 0.6,
      "note": "geometric heuristic over the h1 and nearby media",
      "needs_review": true
    },
    "layout.section_count": {
      "source": "dom",
      "confidence": 0.6,
      "needs_review": true
    },
    "motion": {
      "source": "dom",
      "confidence": 0.8
    },
    "components": {
      "source": "dom",
      "confidence": 0.78
    },
    "stack": {
      "source": "dom",
      "confidence": 0.85,
      "note": "globals, script URLs and response headers"
    },
    "meta": {
      "source": "dom",
      "confidence": 0.99
    },
    "sections[].bbox": {
      "source": "dom",
      "confidence": 0.8
    },
    "sections[].kind": {
      "source": "dom",
      "confidence": 0.62,
      "note": "class-name and content-count heuristics; per-section confidence in sections[].confidence",
      "needs_review": true
    },
    "imagery.media_share": {
      "source": "dom",
      "confidence": 0.8
    },
    "imagery.dominant_colors": {
      "source": "pixels",
      "confidence": 0.7,
      "note": "clustered screenshot pixels inside media boxes (approximate, OKLab ΔE 0.06 clusters)"
    }
  }
}