{
  "spec_version": 2,
  "extractor_version": "0.2.0",
  "url": "https://brianlovin.com/",
  "final_url": "https://brianlovin.com/",
  "slug": "brianlovin.com",
  "captured_at": "2026-11-12T15:34:05.436Z",
  "title": "Brian Lovin",
  "meta": {
    "description": "Brian Lovin is a software designer living in New York, currently designing AI products at Notion.",
    "og_image": "https://brianlovin.com/img/og.png",
    "og_title": "Brian Lovin",
    "theme_color": "#fff",
    "lang": "en"
  },
  "capture": {
    "variants": [
      {
        "name": "desktop-light",
        "width": 1440,
        "height": 900,
        "scheme": "light",
        "page_height": 1572,
        "full": "screens/desktop-light-full.png",
        "fold": "screens/desktop-light-fold.png"
      },
      {
        "name": "desktop-dark",
        "width": 1440,
        "height": 900,
        "scheme": "dark",
        "page_height": 1572,
        "full": "screens/desktop-dark-full.png",
        "fold": "screens/desktop-dark-fold.png"
      },
      {
        "name": "mobile-light",
        "width": 390,
        "height": 844,
        "scheme": "light",
        "page_height": 2222,
        "full": "screens/mobile-light-full.png",
        "fold": "screens/mobile-light-fold.png"
      },
      {
        "name": "mobile-dark",
        "width": 390,
        "height": 844,
        "scheme": "dark",
        "page_height": 2222,
        "full": "screens/mobile-dark-full.png",
        "fold": "screens/mobile-dark-fold.png"
      }
    ],
    "status": 200,
    "warnings": [],
    "element_count": 145,
    "render_quality": {
      "status": "ok",
      "reasons": [],
      "screenshot": "ok",
      "screenshot_reasons": []
    },
    "worker_os": "macos"
  },
  "color": {
    "scheme": "light",
    "palette": [
      {
        "hex": "#FFFFFF",
        "oklch": [
          1,
          0,
          0
        ],
        "role": "bg",
        "area": 0.9233,
        "uses": {
          "bg": 1,
          "text": 0,
          "border": 0,
          "fill": 0
        },
        "css_var": "--background-color-primary"
      },
      {
        "hex": "#A1A1A1",
        "oklch": [
          0.708,
          0,
          156.6
        ],
        "role": "muted",
        "area": 0.0378,
        "uses": {
          "bg": 0,
          "text": 0.993,
          "border": 0,
          "fill": 0.007
        },
        "css": "lab(66.128 -0.0000298023 0.0000119209)",
        "css_var": "--text-color-quaternary"
      },
      {
        "hex": "#171717",
        "oklch": [
          0.205,
          0,
          176.3
        ],
        "role": "text",
        "area": 0.0277,
        "uses": {
          "bg": 0,
          "text": 0.995,
          "border": 0,
          "fill": 0.005
        },
        "css": "lab(7.78201 -0.0000149012 0)",
        "css_var": "--text-color-primary"
      },
      {
        "hex": "#525252",
        "oklch": [
          0.439,
          0,
          129.6
        ],
        "role": "other",
        "area": 0.0112,
        "uses": {
          "bg": 0,
          "text": 1,
          "border": 0,
          "fill": 0
        },
        "css": "lab(34.924 0 0)",
        "css_var": "--color-neutral-600"
      }
    ],
    "roles": {
      "bg": "#FFFFFF",
      "text": "#171717",
      "muted": "#A1A1A1"
    },
    "accent_strategy": "monochrome",
    "contrast": {
      "text_on_bg": 17.91,
      "muted_on_bg": 2.59,
      "accent_on_bg": null
    },
    "gradients": [],
    "theme_color": "#fff",
    "dark_mode": {
      "responds_to_prefers_color_scheme": true,
      "palette": [
        {
          "hex": "#000000",
          "oklch": [
            0,
            0,
            0
          ],
          "role": "bg",
          "area": 0.9233,
          "uses": {
            "bg": 1,
            "text": 0,
            "border": 0,
            "fill": 0
          },
          "css_var": "--color-black"
        },
        {
          "hex": "#FFFFFF52",
          "oklch": [
            1,
            0,
            0
          ],
          "role": "muted",
          "area": 0.0368,
          "uses": {
            "bg": 0,
            "text": 0.993,
            "border": 0,
            "fill": 0.007
          },
          "css_var": "--text-color-quaternary",
          "on_bg": "#525252"
        },
        {
          "hex": "#FFFFFFE6",
          "oklch": [
            1,
            0,
            0
          ],
          "role": "text",
          "area": 0.0277,
          "uses": {
            "bg": 0,
            "text": 0.995,
            "border": 0,
            "fill": 0.005
          },
          "css_var": "--text-color-primary",
          "on_bg": "#E6E6E6"
        },
        {
          "hex": "#FFFFFFB3",
          "oklch": [
            1,
            0,
            0
          ],
          "role": "other",
          "area": 0.0112,
          "uses": {
            "bg": 0,
            "text": 1,
            "border": 0,
            "fill": 0
          },
          "css_var": "--text-color-secondary",
          "on_bg": "#B3B3B3"
        }
      ],
      "roles": {
        "bg": "#000000",
        "text": "#FFFFFFE6",
        "muted": "#FFFFFF52"
      }
    },
    "declared_accents": [
      {
        "css_var": "--background-color-brand",
        "hex": "#FC532A",
        "painted": false
      }
    ],
    "accent_detail": {
      "method": "none",
      "candidates": []
    },
    "highlights": []
  },
  "type": {
    "families": [
      {
        "family": "Inter",
        "css_family": "Inter",
        "role": "display",
        "roles": [
          "display",
          "body"
        ],
        "weights": [
          400,
          500,
          600
        ],
        "share": 1,
        "kind": "webfont",
        "classification": "sans",
        "foundry": null,
        "stack": "Inter, \"Inter Fallback\", sans-serif",
        "files": [
          "https://brianlovin.com/_next/static/immutable/media/46a9e2f250689b4a-s.03ez25a9g3i0n.woff2",
          "https://brianlovin.com/_next/static/immutable/media/76b70a1dbe058eb5-s.3i9rha7jpxn0q.woff2",
          "https://brianlovin.com/_next/static/immutable/media/2fb76073e23fd9e4-s.2o7ko1d-5m1xu.woff2",
          "https://brianlovin.com/_next/static/immutable/media/6131cbbf5549afa2-s.1ee5w62fj497l.woff2"
        ],
        "internal_names": [
          "Inter"
        ]
      }
    ],
    "declared_unused": [
      {
        "family": "Source Serif 4",
        "css_family": "Source Serif 4",
        "face_status": "unloaded",
        "css_mentions": 13
      },
      {
        "family": "JetBrainsMono Nerd Font",
        "css_family": "JetBrainsMono Nerd Font",
        "face_status": "unloaded",
        "css_mentions": 1
      }
    ],
    "scale_px": [
      16,
      20,
      24
    ],
    "ratio": null,
    "body_size": 20,
    "root_size": 16,
    "line_height": 1.6,
    "display_size": 24,
    "tracking_display": "0em",
    "case": "title",
    "styles": [
      {
        "name": "display",
        "family": "Inter",
        "size_px": 24,
        "weight": 600,
        "line_height": 1.333,
        "letter_spacing_em": 0,
        "sample": "Brian Lovin"
      },
      {
        "name": "headline",
        "family": "Inter",
        "size_px": 16,
        "weight": 400,
        "line_height": 1.6,
        "letter_spacing_em": 0,
        "sample": "Writing"
      },
      {
        "name": "body",
        "family": "Inter",
        "size_px": 20,
        "weight": 400,
        "line_height": 1.6,
        "letter_spacing_em": 0,
        "sample": "A minimal hacker news reader"
      }
    ],
    "mobile": {
      "body_size": 20,
      "display_size": 24
    }
  },
  "space": {
    "scale_px": [
      4,
      6,
      8,
      12,
      16,
      64,
      128
    ],
    "base": 8,
    "base_fit": 0.91,
    "density": 0.083,
    "section_padding_px": null
  },
  "shape": {
    "radii_px": [],
    "dominant_radius": 0,
    "border_usage": "none",
    "border_width_px": null
  },
  "depth": {
    "shadows": [],
    "style": "flat"
  },
  "layout": {
    "container_px": 640,
    "columns": null,
    "hero": "left-aligned",
    "nav": "none-detected",
    "page_height_px": 1572,
    "section_count": 3
  },
  "motion": {
    "transitions": 2,
    "easing": "cubic-bezier(0.4, 0, 0.2, 1)",
    "durations_ms": [
      150
    ],
    "animations": []
  },
  "components": {},
  "imagery": {
    "media_share": 0.002,
    "dominant_colors": [],
    "has_photography": null,
    "has_illustration": null
  },
  "stack": [
    "next.js",
    "vercel"
  ],
  "sections": [
    {
      "index": 0,
      "kind": "banner",
      "kind_source": "dom",
      "confidence": 0.6,
      "bbox": {
        "x": 0,
        "y": 0,
        "w": 1440,
        "h": 56
      },
      "bg": "#FFFFFF",
      "crop": "img/section-00-banner.webp"
    },
    {
      "index": 1,
      "kind": "hero",
      "kind_source": "dom",
      "confidence": 0.9,
      "bbox": {
        "x": 384,
        "y": 56,
        "w": 672,
        "h": 460
      },
      "heading": "Brian Lovin",
      "bg": "#FFFFFF",
      "crop": "img/section-01-hero.webp"
    },
    {
      "index": 2,
      "kind": "footer",
      "kind_source": "dom",
      "confidence": 0.75,
      "bbox": {
        "x": 384,
        "y": 516,
        "w": 672,
        "h": 928
      },
      "heading": "Writing",
      "bg": "#FFFFFF",
      "crop": "img/section-02-footer.webp"
    }
  ],
  "images": {
    "manifest": "img/manifest.json",
    "count": 11
  },
  "review": {
    "threshold": 0.7,
    "needs_review": [
      "components",
      "imagery.dominant_colors",
      "layout.columns",
      "layout.hero",
      "layout.section_count",
      "space.section_padding_px",
      "type.ratio"
    ],
    "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.accent_strategy": {
      "source": "dom",
      "confidence": 0.85,
      "note": "no chromatic color used on controls, links or repeated text"
    },
    "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.95,
      "note": "named from the @font-face rule that rendered (CDP platform fonts)"
    },
    "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.5,
      "note": "geometric fit over the scale above body size",
      "needs_review": true
    },
    "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.91,
      "note": "share of paddings/margins/gaps on the base: 0.91"
    },
    "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.6,
      "note": "no opaque primary button found",
      "needs_review": true
    },
    "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.75,
      "note": "class-name and content-count heuristics; per-section confidence in sections[].confidence"
    },
    "imagery.media_share": {
      "source": "dom",
      "confidence": 0.8
    },
    "imagery.dominant_colors": {
      "source": "pixels",
      "confidence": 0.5,
      "note": "clustered screenshot pixels inside media boxes (approximate, OKLab ΔE 0.06 clusters)",
      "needs_review": true
    }
  }
}