{
  "name": "Dupe",
  "slug": "dupe",
  "domain": "Dupe.com",
  "sources": [
    "startups_gallery"
  ],
  "branding": {
    "colorScheme": "light",
    "fonts": [
      {
        "family": "Roboto",
        "role": "body"
      },
      {
        "family": "Helvetica Neue",
        "role": "body"
      },
      {
        "family": "Arial",
        "role": "body"
      },
      {
        "family": "Noto Sans",
        "role": "body"
      }
    ],
    "colors": {
      "primary": "#181D27",
      "secondary": "#111827",
      "accent": "#8805A7",
      "background": "#FAFAFA",
      "textPrimary": "#000000",
      "link": "#8805A7"
    },
    "typography": {
      "fontFamilies": {
        "primary": "Roboto",
        "heading": "Roboto"
      },
      "fontStacks": {
        "heading": [
          "Inter",
          "Inter Fallback",
          "ui-sans-serif",
          "system-ui",
          "-apple-system",
          "BlinkMacSystemFont",
          "Segoe UI",
          "Roboto",
          "Helvetica Neue",
          "Arial",
          "Noto Sans",
          "sans-serif",
          "Apple Color Emoji",
          "Segoe UI Emoji",
          "Segoe UI Symbol",
          "Noto Color Emoji"
        ],
        "body": [
          "Inter",
          "Inter Fallback",
          "ui-sans-serif",
          "system-ui",
          "-apple-system",
          "BlinkMacSystemFont",
          "Segoe UI",
          "Roboto",
          "Helvetica Neue",
          "Arial",
          "Noto Sans",
          "sans-serif",
          "Apple Color Emoji",
          "Segoe UI Emoji",
          "Segoe UI Symbol",
          "Noto Color Emoji"
        ],
        "paragraph": [
          "Inter",
          "Inter Fallback",
          "ui-sans-serif",
          "system-ui",
          "-apple-system",
          "BlinkMacSystemFont",
          "Segoe UI",
          "Roboto",
          "Helvetica Neue",
          "Arial",
          "Noto Sans",
          "sans-serif",
          "Apple Color Emoji",
          "Segoe UI Emoji",
          "Segoe UI Symbol",
          "Noto Color Emoji"
        ]
      },
      "fontSizes": {
        "h1": "16px",
        "h2": "16px",
        "body": "16px"
      }
    },
    "spacing": {
      "baseUnit": 4,
      "borderRadius": "14px"
    },
    "components": {
      "input": {
        "background": "transparent",
        "textColor": "#323232",
        "borderColor": null,
        "borderRadius": "0px",
        "borderRadiusCorners": {
          "topLeft": "0px",
          "topRight": "0px",
          "bottomRight": "0px",
          "bottomLeft": "0px"
        },
        "shadow": "none"
      },
      "buttonPrimary": {
        "background": "#EEEEEE",
        "textColor": "#000000",
        "borderRadius": "9999px",
        "borderRadiusCorners": {
          "topLeft": "9999px",
          "topRight": "9999px",
          "bottomRight": "9999px",
          "bottomLeft": "9999px"
        },
        "shadow": "none"
      }
    },
    "images": {
      "logo": "data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2299%22%20height%3D%2238%22%20viewBox%3D%220%200%2099%2038%22%20fill%3D%22none%22%20class%3D%22h-7%20w-auto%20md%3Ah-8%22%20data-fc-idx%3D%220%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M43.92%208.143h6.627L48.31%2018.652c-.496%202.3-1.411%204.34-2.745%206.117-1.307%201.778-2.901%203.15-4.784%204.118-1.856.967-3.869%201.45-6.038%201.45-2.17%200-4-.483-5.49-1.45-1.464-.968-2.484-2.34-3.059-4.118-.549-1.777-.575-3.816-.079-6.117l2.236-10.51h6.627l-2.47%2011.608c-.21.967-.21%201.83%200%202.588.235.732.653%201.307%201.254%201.726.601.418%201.333.627%202.196.627a4.88%204.88%200%200%200%202.392-.627%205.646%205.646%200%200%200%201.96-1.726%206.81%206.81%200%200%200%201.138-2.588l2.47-11.607Z%22%20style%3D%22fill%3A%20rgb(0%2C%200%2C%200)%20!important%3B%22%2F%3E%3Cpath%20fill%3D%22currentColor%22%20fill-rule%3D%22evenodd%22%20d%3D%22M10.156%2030.338c-2.013%200-3.79-.405-5.333-1.216-1.516-.81-2.705-1.934-3.568-3.372C.418%2024.286%200%2022.626%200%2020.77c0-2.405.588-4.601%201.765-6.588%201.176-1.987%202.784-3.569%204.823-4.745%202.065-1.176%204.34-1.765%206.823-1.765.889%200%201.7.105%202.431.314a7.094%207.094%200%200%201%202.04.824%206.14%206.14%200%200%201%201.568%201.254L21.41.928h6.667l-3.922%2018.508c-.48%201.878-1.124%203.621-2.352%205.294-1.229%201.647-2.837%202.994-4.824%204.04-1.986%201.045-4.26%201.568-6.823%201.568Zm4.51-6.667c-.915.654-1.987.98-3.216.98-.915%200-1.725-.182-2.43-.548a3.906%203.906%200%200%201-1.648-1.608c-.366-.706-.549-1.542-.549-2.51%200-1.176.262-2.274.784-3.294.523-1.02%201.242-1.83%202.157-2.43.941-.602%202-.903%203.176-.903.89%200%201.687.183%202.393.55.705.34%201.254.862%201.646%201.568.393.68.589%201.516.589%202.51%200%201.045-.249%202.09-.745%203.136a6.754%206.754%200%200%201-2.157%202.55ZM63.894%207.711c2.013%200%203.791.406%205.333%201.216%201.517.81%202.706%201.934%203.569%203.372.836%201.464%201.255%203.124%201.255%204.98%200%202.405-.588%204.602-1.765%206.588-1.176%201.987-2.784%203.569-4.823%204.745-2.065%201.177-4.34%201.765-6.823%201.765-.89%200-1.7-.105-2.432-.314a7.099%207.099%200%200%201-2.039-.823%206.142%206.142%200%200%201-1.568-1.255l-1.96%209.136h-6.667l3.921-18.508c.48-1.878%201.124-3.621%202.353-5.294%201.229-1.647%202.836-2.993%204.823-4.04%201.987-1.045%204.261-1.568%206.823-1.568Zm-4.51%206.667c.916-.654%201.988-.98%203.216-.98.915%200%201.726.182%202.432.548a3.906%203.906%200%200%201%201.647%201.608c.365.706.549%201.542.549%202.51a7.114%207.114%200%200%201-.785%203.294c-.523%201.02-1.242%201.83-2.156%202.43-.942.602-2%20.903-3.177.903-.889%200-1.686-.183-2.392-.55a3.672%203.672%200%200%201-1.647-1.568c-.392-.68-.588-1.516-.588-2.51%200-1.045.248-2.09.745-3.136a6.755%206.755%200%200%201%202.157-2.55ZM93.002%2023.317l1.582%204.912c-6.166%203.596-12.31%202.154-14.68.932-7.141-3.7-5.263-11.581-3.426-14.823%204.786-8.44%2019.956-9.3%2021.622-.537%201.475%207.756-10.07%2010.58-16.836%208.864%201.72%202.764%206.229%203.12%2011.738.652ZM81.5%2017.427c2.9%201.793%2010.086%201.328%2010.473-1.956.34-2.894-7.448-4.55-10.473%201.956Z%22%20clip-rule%3D%22evenodd%22%20style%3D%22fill%3A%20rgb(0%2C%200%2C%200)%20!important%3B%22%2F%3E%3C%2Fsvg%3E",
      "favicon": "https://dupe.com/apple-touch-icon.png",
      "ogImage": "https://dupe.com/assets/dupe-og-v1.png",
      "logoHref": "/"
    },
    "__llm_logo_reasoning": {
      "selectedIndex": 0,
      "reasoning": "Selected #0 because it is visible, medium-sized, and links to the homepage, which are strong indicators of a primary brand logo.",
      "confidence": 0.9,
      "source": "llm"
    },
    "__llm_button_reasoning": {
      "primary": {
        "index": 0,
        "text": "Sign up",
        "reasoning": "The 'Sign up' button is likely the primary CTA due to its action-oriented text, which is common for primary actions on websites."
      },
      "secondary": {
        "index": -1,
        "text": "N/A",
        "reasoning": "All buttons share the same background color, making it impossible to select a secondary button with a different color."
      },
      "confidence": 0.9
    },
    "personality": {
      "tone": "modern",
      "energy": "medium",
      "targetAudience": "tech-savvy consumers looking for AI-driven solutions"
    },
    "designSystem": {
      "framework": "tailwind",
      "componentLibrary": ""
    },
    "confidence": {
      "buttons": 0.9,
      "colors": 0.95,
      "overall": 0.925
    },
    "__llm_metadata": {
      "logoSelection": {
        "llmCalled": true,
        "llmSucceeded": true,
        "finalSource": "llm",
        "rawLogoSelection": {
          "selectedLogoIndex": 0,
          "selectedLogoReasoning": "Selected #0 because it is visible, medium-sized, and links to the homepage, which are strong indicators of a primary brand logo.",
          "confidence": 0.9
        }
      },
      "buttonClassification": {
        "llmCalled": true,
        "llmSucceeded": true
      }
    }
  },
  "images": [
    {
      "file": "https://e4p9rs3sldnmtboz.public.blob.vercel-storage.com/dupe/1f5bc4678d.webp",
      "alt": "Dupe.com | #1 AI Dupe Finder for Furniture, Fashion & More",
      "source_url": "https://dupe.com/product/3TCeJXmm86/save-on-dromedaren",
      "image_url": "https://media.crystallize.com/sweef/24/12/18/14/@3200/54210603493_bbddbd3690_o.webp",
      "width": 3200,
      "height": 4000,
      "bytes": 1652912,
      "query": "site:Dupe.com",
      "query_suffix": "site:Dupe.com"
    },
    {
      "file": "https://e4p9rs3sldnmtboz.public.blob.vercel-storage.com/dupe/577ef03d1f.webp",
      "alt": "Dupe.com | #1 AI Dupe Finder for Furniture, Fashion & More",
      "source_url": "https://dupe.com/blog",
      "image_url": "https://dupe.com/_next/image?url=https%3A%2F%2Fus-west-2.graphassets.com%2Fcmag4g5a905ii07mxfjxgc4bl%2Fcmncj17jlz60008lnmzlht9q7&w=3840&q=75",
      "width": 1536,
      "height": 1024,
      "bytes": 637678,
      "query": "site:Dupe.com blog",
      "query_suffix": "site:Dupe.com blog"
    },
    {
      "file": "https://e4p9rs3sldnmtboz.public.blob.vercel-storage.com/dupe/9f892f073b.webp",
      "alt": "Dupe.com | #1 AI Dupe Finder for Furniture, Fashion & More",
      "source_url": "https://dupe.com/product/vXzkcjS5n/save-on-lombard-chandelier-black",
      "image_url": "https://cdn-images.article.com/products/SKU23248/2890x1500/image166015.jpg?w=3840&q=60&fm=webp&fit=max",
      "width": 3840,
      "height": 3840,
      "bytes": 448554,
      "query": "site:Dupe.com",
      "query_suffix": "site:Dupe.com"
    },
    {
      "file": "https://e4p9rs3sldnmtboz.public.blob.vercel-storage.com/dupe/e254673e9d.webp",
      "alt": "Dupe.com | #1 AI Dupe Finder for Furniture, Fashion & More",
      "source_url": "https://dupe.com/blog",
      "image_url": "https://dupe.com/_next/image?url=https%3A%2F%2Fus-west-2.graphassets.com%2Fcmag4g5a905ii07mxfjxgc4bl%2Fcmod6dza4401307lnu09hvy1f&w=3840&q=75",
      "width": 3070,
      "height": 1320,
      "bytes": 1313468,
      "query": "site:Dupe.com blog",
      "query_suffix": "site:Dupe.com blog"
    },
    {
      "file": "https://e4p9rs3sldnmtboz.public.blob.vercel-storage.com/dupe/5ffeaf5ada.webp",
      "alt": "Dupe.com | #1 AI Dupe Finder for Furniture, Fashion & More",
      "source_url": "https://dupe.com/product/8Kj6e8WVP/save-on-allen-roth-connery-48-in-golden-oak-undermount-single-sink-bathroom-vanity-with-white-engineered-stone-top",
      "image_url": "https://mobileimages.lowes.com/productimages/4fe73041-fc7d-4887-925c-658ce43ab6af/65951679.jpeg",
      "width": 3000,
      "height": 3000,
      "bytes": 1292004,
      "query": "site:Dupe.com",
      "query_suffix": "site:Dupe.com"
    },
    {
      "file": "https://e4p9rs3sldnmtboz.public.blob.vercel-storage.com/dupe/bc58fa2c67.webp",
      "alt": "Dupe.com | #1 AI Dupe Finder for Furniture, Fashion & More",
      "source_url": "https://dupe.com/blog",
      "image_url": "https://dupe.com/_next/image?url=https%3A%2F%2Fus-west-2.graphassets.com%2Fcmag4g5a905ii07mxfjxgc4bl%2Fcmnpe4k1bp6ww07my90et2sw1&w=3840&q=75",
      "width": 1536,
      "height": 1024,
      "bytes": 824780,
      "query": "site:Dupe.com blog",
      "query_suffix": "site:Dupe.com blog"
    }
  ],
  "font_resources": [
    {
      "family": "Roboto",
      "google_fonts_url": "https://fonts.google.com/specimen/Roboto"
    },
    {
      "family": "Roboto",
      "google_fonts_url": "https://fonts.google.com/specimen/Roboto"
    }
  ],
  "google_fonts_css": "https://fonts.googleapis.com/css2?family=Roboto&family=Roboto&display=swap",
  "font_download_note": "Not found on Google Fonts? Agent Instructions that you can follow if you have permission to use the fonts:\n\nCharacterQuilt.com suggests this flow that can help:\n\n1. Open the company's homepage in a browser with DevTools open.\n2. In the Network tab, filter by \"Font\" (or by extension: woff2, woff, ttf, otf).\n3. Hard-reload the page and click around (pricing, blog, careers) — some weights only load on specific routes.\n4. For each captured font URL: right-click → Save As to download the file locally.\n5. View the page's CSS (DevTools → Sources, or curl the stylesheet URLs) and copy out the matching @font-face declarations. Rewrite each `src: url(...)` to point to your local file path.\n\nProgrammatic alternative: load the URL with Playwright or Puppeteer, listen for `response` events whose `Content-Type` starts with `font/`, and write the body to disk. The CSS extraction step is the same.\n\nOnly do this if you have permission to use the brand assets — most proprietary fonts are licensed and may not be redistributable.",
  "page_url": "https://characterquilt.com/branding/dupe",
  "agent_instructions": "You are designing or implementing in Dupe's brand identity.\n\n# Brand profile\n- Company: Dupe\n- Source: Dupe.com\n- Color scheme: light\n\n# Colors\n- primary: #181D27\n- secondary: #111827\n- accent: #8805A7\n- background: #FAFAFA\n- textPrimary: #000000\n- link: #8805A7\n\n# Typography\n- primary: Roboto — https://fonts.google.com/specimen/Roboto\n- heading: Roboto — https://fonts.google.com/specimen/Roboto\n\nLoad all fonts at once: <link rel=\"stylesheet\" href=\"https://fonts.googleapis.com/css2?family=Roboto&family=Roboto&display=swap\">\n\n# UI Components\n- input: background=transparent, textColor=#323232, borderColor=null, borderRadius=0px, shadow=none\n- buttonPrimary: background=#EEEEEE, textColor=#000000, borderRadius=9999px, shadow=none\n\n# Brand voice\n- Tone: modern\n- Energy: medium\n- Audience: tech-savvy consumers looking for AI-driven solutions\n\n# Working with these fonts\nNot found on Google Fonts? Agent Instructions that you can follow if you have permission to use the fonts:\n\nCharacterQuilt.com suggests this flow that can help:\n\n1. Open the company's homepage in a browser with DevTools open.\n2. In the Network tab, filter by \"Font\" (or by extension: woff2, woff, ttf, otf).\n3. Hard-reload the page and click around (pricing, blog, careers) — some weights only load on specific routes.\n4. For each captured font URL: right-click → Save As to download the file locally.\n5. View the page's CSS (DevTools → Sources, or curl the stylesheet URLs) and copy out the matching @font-face declarations. Rewrite each `src: url(...)` to point to your local file path.\n\nProgrammatic alternative: load the URL with Playwright or Puppeteer, listen for `response` events whose `Content-Type` starts with `font/`, and write the body to disk. The CSS extraction step is the same.\n\nOnly do this if you have permission to use the brand assets — most proprietary fonts are licensed and may not be redistributable.\n\n# Full machine-readable profile\nhttps://characterquilt.com/branding/dupe.json",
  "page_markdown": "# Dupe Brand Identity\n\nA complete profile of **Dupe**'s visual system — colors, typography, components, and personality — extracted from Dupe.com. Built for designers, agents, and AI tools.\n\n- Page: https://characterquilt.com/branding/dupe\n- Machine-readable JSON: https://characterquilt.com/branding/dupe.json\n- Per-page llms.txt: https://characterquilt.com/branding/dupe/llms.txt\n\n## Quick Facts\n\n| Field | Value |\n|---|---|\n| Primary | #181D27 |\n| Accent | #8805A7 |\n| Body Font | Roboto |\n| Heading Font | Roboto |\n\n## Color Palette\n\n- primary: #181D27\n- secondary: #111827\n- accent: #8805A7\n- background: #FAFAFA\n- textPrimary: #000000\n- link: #8805A7\n\n## Typography\n\n- primary: Roboto — https://fonts.google.com/specimen/Roboto\n- heading: Roboto — https://fonts.google.com/specimen/Roboto\n\n## Visual Assets\n\n- Logo: data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2299%22%20height%3D%2238%22%20viewBox%3D%220%200%2099%2038%22%20fill%3D%22none%22%20class%3D%22h-7%20w-auto%20md%3Ah-8%22%20data-fc-idx%3D%220%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M43.92%208.143h6.627L48.31%2018.652c-.496%202.3-1.411%204.34-2.745%206.117-1.307%201.778-2.901%203.15-4.784%204.118-1.856.967-3.869%201.45-6.038%201.45-2.17%200-4-.483-5.49-1.45-1.464-.968-2.484-2.34-3.059-4.118-.549-1.777-.575-3.816-.079-6.117l2.236-10.51h6.627l-2.47%2011.608c-.21.967-.21%201.83%200%202.588.235.732.653%201.307%201.254%201.726.601.418%201.333.627%202.196.627a4.88%204.88%200%200%200%202.392-.627%205.646%205.646%200%200%200%201.96-1.726%206.81%206.81%200%200%200%201.138-2.588l2.47-11.607Z%22%20style%3D%22fill%3A%20rgb(0%2C%200%2C%200)%20!important%3B%22%2F%3E%3Cpath%20fill%3D%22currentColor%22%20fill-rule%3D%22evenodd%22%20d%3D%22M10.156%2030.338c-2.013%200-3.79-.405-5.333-1.216-1.516-.81-2.705-1.934-3.568-3.372C.418%2024.286%200%2022.626%200%2020.77c0-2.405.588-4.601%201.765-6.588%201.176-1.987%202.784-3.569%204.823-4.745%202.065-1.176%204.34-1.765%206.823-1.765.889%200%201.7.105%202.431.314a7.094%207.094%200%200%201%202.04.824%206.14%206.14%200%200%201%201.568%201.254L21.41.928h6.667l-3.922%2018.508c-.48%201.878-1.124%203.621-2.352%205.294-1.229%201.647-2.837%202.994-4.824%204.04-1.986%201.045-4.26%201.568-6.823%201.568Zm4.51-6.667c-.915.654-1.987.98-3.216.98-.915%200-1.725-.182-2.43-.548a3.906%203.906%200%200%201-1.648-1.608c-.366-.706-.549-1.542-.549-2.51%200-1.176.262-2.274.784-3.294.523-1.02%201.242-1.83%202.157-2.43.941-.602%202-.903%203.176-.903.89%200%201.687.183%202.393.55.705.34%201.254.862%201.646%201.568.393.68.589%201.516.589%202.51%200%201.045-.249%202.09-.745%203.136a6.754%206.754%200%200%201-2.157%202.55ZM63.894%207.711c2.013%200%203.791.406%205.333%201.216%201.517.81%202.706%201.934%203.569%203.372.836%201.464%201.255%203.124%201.255%204.98%200%202.405-.588%204.602-1.765%206.588-1.176%201.987-2.784%203.569-4.823%204.745-2.065%201.177-4.34%201.765-6.823%201.765-.89%200-1.7-.105-2.432-.314a7.099%207.099%200%200%201-2.039-.823%206.142%206.142%200%200%201-1.568-1.255l-1.96%209.136h-6.667l3.921-18.508c.48-1.878%201.124-3.621%202.353-5.294%201.229-1.647%202.836-2.993%204.823-4.04%201.987-1.045%204.261-1.568%206.823-1.568Zm-4.51%206.667c.916-.654%201.988-.98%203.216-.98.915%200%201.726.182%202.432.548a3.906%203.906%200%200%201%201.647%201.608c.365.706.549%201.542.549%202.51a7.114%207.114%200%200%201-.785%203.294c-.523%201.02-1.242%201.83-2.156%202.43-.942.602-2%20.903-3.177.903-.889%200-1.686-.183-2.392-.55a3.672%203.672%200%200%201-1.647-1.568c-.392-.68-.588-1.516-.588-2.51%200-1.045.248-2.09.745-3.136a6.755%206.755%200%200%201%202.157-2.55ZM93.002%2023.317l1.582%204.912c-6.166%203.596-12.31%202.154-14.68.932-7.141-3.7-5.263-11.581-3.426-14.823%204.786-8.44%2019.956-9.3%2021.622-.537%201.475%207.756-10.07%2010.58-16.836%208.864%201.72%202.764%206.229%203.12%2011.738.652ZM81.5%2017.427c2.9%201.793%2010.086%201.328%2010.473-1.956.34-2.894-7.448-4.55-10.473%201.956Z%22%20clip-rule%3D%22evenodd%22%20style%3D%22fill%3A%20rgb(0%2C%200%2C%200)%20!important%3B%22%2F%3E%3C%2Fsvg%3E\n- Favicon: https://dupe.com/apple-touch-icon.png\n- Social card (og:image): https://dupe.com/assets/dupe-og-v1.png\n\n## UI Components\n\n- input: background=transparent, textColor=#323232, borderColor=null, borderRadius=0px, shadow=none\n- buttonPrimary: background=#EEEEEE, textColor=#000000, borderRadius=9999px, shadow=none\n\n## Brand Personality\n\nTone: modern · Energy: medium · Audience: tech-savvy consumers looking for AI-driven solutions\n\n## Dupe Brand in the Wild\n\nReal-world brand assets — ads, campaigns, marketing materials.\n\n- **Dupe.com | #1 AI Dupe Finder for Furniture, Fashion & More**\n  - Image: https://media.crystallize.com/sweef/24/12/18/14/@3200/54210603493_bbddbd3690_o.webp\n  - Source: https://dupe.com/product/3TCeJXmm86/save-on-dromedaren\n- **Dupe.com | #1 AI Dupe Finder for Furniture, Fashion & More**\n  - Image: https://dupe.com/_next/image?url=https%3A%2F%2Fus-west-2.graphassets.com%2Fcmag4g5a905ii07mxfjxgc4bl%2Fcmncj17jlz60008lnmzlht9q7&w=3840&q=75\n  - Source: https://dupe.com/blog\n- **Dupe.com | #1 AI Dupe Finder for Furniture, Fashion & More**\n  - Image: https://cdn-images.article.com/products/SKU23248/2890x1500/image166015.jpg?w=3840&q=60&fm=webp&fit=max\n  - Source: https://dupe.com/product/vXzkcjS5n/save-on-lombard-chandelier-black\n- **Dupe.com | #1 AI Dupe Finder for Furniture, Fashion & More**\n  - Image: https://dupe.com/_next/image?url=https%3A%2F%2Fus-west-2.graphassets.com%2Fcmag4g5a905ii07mxfjxgc4bl%2Fcmod6dza4401307lnu09hvy1f&w=3840&q=75\n  - Source: https://dupe.com/blog\n- **Dupe.com | #1 AI Dupe Finder for Furniture, Fashion & More**\n  - Image: https://mobileimages.lowes.com/productimages/4fe73041-fc7d-4887-925c-658ce43ab6af/65951679.jpeg\n  - Source: https://dupe.com/product/8Kj6e8WVP/save-on-allen-roth-connery-48-in-golden-oak-undermount-single-sink-bathroom-vanity-with-white-engineered-stone-top\n- **Dupe.com | #1 AI Dupe Finder for Furniture, Fashion & More**\n  - Image: https://dupe.com/_next/image?url=https%3A%2F%2Fus-west-2.graphassets.com%2Fcmag4g5a905ii07mxfjxgc4bl%2Fcmnpe4k1bp6ww07my90et2sw1&w=3840&q=75\n  - Source: https://dupe.com/blog\n\n## Working with these fonts\n\nNot found on Google Fonts? Agent Instructions that you can follow if you have permission to use the fonts:\n\nCharacterQuilt.com suggests this flow that can help:\n\n1. Open the company's homepage in a browser with DevTools open.\n2. In the Network tab, filter by \"Font\" (or by extension: woff2, woff, ttf, otf).\n3. Hard-reload the page and click around (pricing, blog, careers) — some weights only load on specific routes.\n4. For each captured font URL: right-click → Save As to download the file locally.\n5. View the page's CSS (DevTools → Sources, or curl the stylesheet URLs) and copy out the matching @font-face declarations. Rewrite each `src: url(...)` to point to your local file path.\n\nProgrammatic alternative: load the URL with Playwright or Puppeteer, listen for `response` events whose `Content-Type` starts with `font/`, and write the body to disk. The CSS extraction step is the same.\n\nOnly do this if you have permission to use the brand assets — most proprietary fonts are licensed and may not be redistributable.\n\n## Machine-Readable Profile\n\n```json\n{\n  \"colorScheme\": \"light\",\n  \"fonts\": [\n    {\n      \"family\": \"Roboto\",\n      \"role\": \"body\"\n    },\n    {\n      \"family\": \"Helvetica Neue\",\n      \"role\": \"body\"\n    },\n    {\n      \"family\": \"Arial\",\n      \"role\": \"body\"\n    },\n    {\n      \"family\": \"Noto Sans\",\n      \"role\": \"body\"\n    }\n  ],\n  \"colors\": {\n    \"primary\": \"#181D27\",\n    \"secondary\": \"#111827\",\n    \"accent\": \"#8805A7\",\n    \"background\": \"#FAFAFA\",\n    \"textPrimary\": \"#000000\",\n    \"link\": \"#8805A7\"\n  },\n  \"typography\": {\n    \"fontFamilies\": {\n      \"primary\": \"Roboto\",\n      \"heading\": \"Roboto\"\n    },\n    \"fontStacks\": {\n      \"heading\": [\n        \"Inter\",\n        \"Inter Fallback\",\n        \"ui-sans-serif\",\n        \"system-ui\",\n        \"-apple-system\",\n        \"BlinkMacSystemFont\",\n        \"Segoe UI\",\n        \"Roboto\",\n        \"Helvetica Neue\",\n        \"Arial\",\n        \"Noto Sans\",\n        \"sans-serif\",\n        \"Apple Color Emoji\",\n        \"Segoe UI Emoji\",\n        \"Segoe UI Symbol\",\n        \"Noto Color Emoji\"\n      ],\n      \"body\": [\n        \"Inter\",\n        \"Inter Fallback\",\n        \"ui-sans-serif\",\n        \"system-ui\",\n        \"-apple-system\",\n        \"BlinkMacSystemFont\",\n        \"Segoe UI\",\n        \"Roboto\",\n        \"Helvetica Neue\",\n        \"Arial\",\n        \"Noto Sans\",\n        \"sans-serif\",\n        \"Apple Color Emoji\",\n        \"Segoe UI Emoji\",\n        \"Segoe UI Symbol\",\n        \"Noto Color Emoji\"\n      ],\n      \"paragraph\": [\n        \"Inter\",\n        \"Inter Fallback\",\n        \"ui-sans-serif\",\n        \"system-ui\",\n        \"-apple-system\",\n        \"BlinkMacSystemFont\",\n        \"Segoe UI\",\n        \"Roboto\",\n        \"Helvetica Neue\",\n        \"Arial\",\n        \"Noto Sans\",\n        \"sans-serif\",\n        \"Apple Color Emoji\",\n        \"Segoe UI Emoji\",\n        \"Segoe UI Symbol\",\n        \"Noto Color Emoji\"\n      ]\n    },\n    \"fontSizes\": {\n      \"h1\": \"16px\",\n      \"h2\": \"16px\",\n      \"body\": \"16px\"\n    }\n  },\n  \"spacing\": {\n    \"baseUnit\": 4,\n    \"borderRadius\": \"14px\"\n  },\n  \"components\": {\n    \"input\": {\n      \"background\": \"transparent\",\n      \"textColor\": \"#323232\",\n      \"borderColor\": null,\n      \"borderRadius\": \"0px\",\n      \"borderRadiusCorners\": {\n        \"topLeft\": \"0px\",\n        \"topRight\": \"0px\",\n        \"bottomRight\": \"0px\",\n        \"bottomLeft\": \"0px\"\n      },\n      \"shadow\": \"none\"\n    },\n    \"buttonPrimary\": {\n      \"background\": \"#EEEEEE\",\n      \"textColor\": \"#000000\",\n      \"borderRadius\": \"9999px\",\n      \"borderRadiusCorners\": {\n        \"topLeft\": \"9999px\",\n        \"topRight\": \"9999px\",\n        \"bottomRight\": \"9999px\",\n        \"bottomLeft\": \"9999px\"\n      },\n      \"shadow\": \"none\"\n    }\n  },\n  \"images\": {\n    \"logo\": \"data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2299%22%20height%3D%2238%22%20viewBox%3D%220%200%2099%2038%22%20fill%3D%22none%22%20class%3D%22h-7%20w-auto%20md%3Ah-8%22%20data-fc-idx%3D%220%22%3E%3Cpath%20fill%3D%22currentColor%22%20d%3D%22M43.92%208.143h6.627L48.31%2018.652c-.496%202.3-1.411%204.34-2.745%206.117-1.307%201.778-2.901%203.15-4.784%204.118-1.856.967-3.869%201.45-6.038%201.45-2.17%200-4-.483-5.49-1.45-1.464-.968-2.484-2.34-3.059-4.118-.549-1.777-.575-3.816-.079-6.117l2.236-10.51h6.627l-2.47%2011.608c-.21.967-.21%201.83%200%202.588.235.732.653%201.307%201.254%201.726.601.418%201.333.627%202.196.627a4.88%204.88%200%200%200%202.392-.627%205.646%205.646%200%200%200%201.96-1.726%206.81%206.81%200%200%200%201.138-2.588l2.47-11.607Z%22%20style%3D%22fill%3A%20rgb(0%2C%200%2C%200)%20!important%3B%22%2F%3E%3Cpath%20fill%3D%22currentColor%22%20fill-rule%3D%22evenodd%22%20d%3D%22M10.156%2030.338c-2.013%200-3.79-.405-5.333-1.216-1.516-.81-2.705-1.934-3.568-3.372C.418%2024.286%200%2022.626%200%2020.77c0-2.405.588-4.601%201.765-6.588%201.176-1.987%202.784-3.569%204.823-4.745%202.065-1.176%204.34-1.765%206.823-1.765.889%200%201.7.105%202.431.314a7.094%207.094%200%200%201%202.04.824%206.14%206.14%200%200%201%201.568%201.254L21.41.928h6.667l-3.922%2018.508c-.48%201.878-1.124%203.621-2.352%205.294-1.229%201.647-2.837%202.994-4.824%204.04-1.986%201.045-4.26%201.568-6.823%201.568Zm4.51-6.667c-.915.654-1.987.98-3.216.98-.915%200-1.725-.182-2.43-.548a3.906%203.906%200%200%201-1.648-1.608c-.366-.706-.549-1.542-.549-2.51%200-1.176.262-2.274.784-3.294.523-1.02%201.242-1.83%202.157-2.43.941-.602%202-.903%203.176-.903.89%200%201.687.183%202.393.55.705.34%201.254.862%201.646%201.568.393.68.589%201.516.589%202.51%200%201.045-.249%202.09-.745%203.136a6.754%206.754%200%200%201-2.157%202.55ZM63.894%207.711c2.013%200%203.791.406%205.333%201.216%201.517.81%202.706%201.934%203.569%203.372.836%201.464%201.255%203.124%201.255%204.98%200%202.405-.588%204.602-1.765%206.588-1.176%201.987-2.784%203.569-4.823%204.745-2.065%201.177-4.34%201.765-6.823%201.765-.89%200-1.7-.105-2.432-.314a7.099%207.099%200%200%201-2.039-.823%206.142%206.142%200%200%201-1.568-1.255l-1.96%209.136h-6.667l3.921-18.508c.48-1.878%201.124-3.621%202.353-5.294%201.229-1.647%202.836-2.993%204.823-4.04%201.987-1.045%204.261-1.568%206.823-1.568Zm-4.51%206.667c.916-.654%201.988-.98%203.216-.98.915%200%201.726.182%202.432.548a3.906%203.906%200%200%201%201.647%201.608c.365.706.549%201.542.549%202.51a7.114%207.114%200%200%201-.785%203.294c-.523%201.02-1.242%201.83-2.156%202.43-.942.602-2%20.903-3.177.903-.889%200-1.686-.183-2.392-.55a3.672%203.672%200%200%201-1.647-1.568c-.392-.68-.588-1.516-.588-2.51%200-1.045.248-2.09.745-3.136a6.755%206.755%200%200%201%202.157-2.55ZM93.002%2023.317l1.582%204.912c-6.166%203.596-12.31%202.154-14.68.932-7.141-3.7-5.263-11.581-3.426-14.823%204.786-8.44%2019.956-9.3%2021.622-.537%201.475%207.756-10.07%2010.58-16.836%208.864%201.72%202.764%206.229%203.12%2011.738.652ZM81.5%2017.427c2.9%201.793%2010.086%201.328%2010.473-1.956.34-2.894-7.448-4.55-10.473%201.956Z%22%20clip-rule%3D%22evenodd%22%20style%3D%22fill%3A%20rgb(0%2C%200%2C%200)%20!important%3B%22%2F%3E%3C%2Fsvg%3E\",\n    \"favicon\": \"https://dupe.com/apple-touch-icon.png\",\n    \"ogImage\": \"https://dupe.com/assets/dupe-og-v1.png\",\n    \"logoHref\": \"/\"\n  },\n  \"__llm_logo_reasoning\": {\n    \"selectedIndex\": 0,\n    \"reasoning\": \"Selected #0 because it is visible, medium-sized, and links to the homepage, which are strong indicators of a primary brand logo.\",\n    \"confidence\": 0.9,\n    \"source\": \"llm\"\n  },\n  \"__llm_button_reasoning\": {\n    \"primary\": {\n      \"index\": 0,\n      \"text\": \"Sign up\",\n      \"reasoning\": \"The 'Sign up' button is likely the primary CTA due to its action-oriented text, which is common for primary actions on websites.\"\n    },\n    \"secondary\": {\n      \"index\": -1,\n      \"text\": \"N/A\",\n      \"reasoning\": \"All buttons share the same background color, making it impossible to select a secondary button with a different color.\"\n    },\n    \"confidence\": 0.9\n  },\n  \"personality\": {\n    \"tone\": \"modern\",\n    \"energy\": \"medium\",\n    \"targetAudience\": \"tech-savvy consumers looking for AI-driven solutions\"\n  },\n  \"designSystem\": {\n    \"framework\": \"tailwind\",\n    \"componentLibrary\": \"\"\n  },\n  \"confidence\": {\n    \"buttons\": 0.9,\n    \"colors\": 0.95,\n    \"overall\": 0.925\n  },\n  \"__llm_metadata\": {\n    \"logoSelection\": {\n      \"llmCalled\": true,\n      \"llmSucceeded\": true,\n      \"finalSource\": \"llm\",\n      \"rawLogoSelection\": {\n        \"selectedLogoIndex\": 0,\n        \"selectedLogoReasoning\": \"Selected #0 because it is visible, medium-sized, and links to the homepage, which are strong indicators of a primary brand logo.\",\n        \"confidence\": 0.9\n      }\n    },\n    \"buttonClassification\": {\n      \"llmCalled\": true,\n      \"llmSucceeded\": true\n    }\n  }\n}\n```\n"
}