ivycheck.json

IvyCheck Brand Identity

A complete profile of IvyCheck's visual system — colors, typography, components, and personality — extracted from https://www.ivycheck.com. Built for designers, agents, and AI tools.

Quick Facts

Field Value
Primary #3A2A1D
Accent #C08A30
Body Font DM Sans
Heading Font Instrument Serif

Color Palette

Typography

Visual Assets

UI Components

Brand Personality

Tone: modern · Energy: medium · Audience: tech-savvy professionals

IvyCheck Brand in the Wild

Real-world brand assets — ads, campaigns, marketing materials.

Working with these fonts

Not found on Google Fonts?

CharacterQuilt.com suggests this flow that can help:

  1. Open the company's homepage in a browser with DevTools open.
  2. In the Network tab, filter by "Font" (or by extension: woff2, woff, ttf, otf).
  3. Hard-reload the page and click around (pricing, blog, careers) — some weights only load on specific routes.
  4. For each captured font URL: right-click → Save As to download the file locally.
  5. 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.

Programmatic 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.

Only do this if you have permission to use the brand assets — most proprietary fonts are licensed and may not be redistributable.

Machine-Readable Profile

{
  "colorScheme": "light",
  "fonts": [
    {
      "family": "DM Sans",
      "role": "body"
    },
    {
      "family": "Instrument Serif",
      "role": "heading"
    }
  ],
  "colors": {
    "primary": "#3A2A1D",
    "secondary": "#8D7263",
    "accent": "#C08A30",
    "background": "#F7F4F0",
    "textPrimary": "#2D1F16",
    "link": "#2D1F16"
  },
  "typography": {
    "fontFamilies": {
      "primary": "DM Sans",
      "heading": "Instrument Serif"
    },
    "fontStacks": {
      "heading": [
        "Instrument Serif",
        "Georgia",
        "serif"
      ],
      "body": [
        "DM Sans",
        "-apple-system",
        "sans-serif"
      ],
      "paragraph": [
        "DM Sans",
        "-apple-system",
        "sans-serif"
      ]
    },
    "fontSizes": {
      "h1": "64px",
      "h2": "40px",
      "body": "18px"
    }
  },
  "spacing": {
    "baseUnit": 8,
    "borderRadius": "0px"
  },
  "components": {
    "buttonPrimary": {
      "background": "#C08A30",
      "textColor": "#FFFFFF",
      "borderRadius": "10px",
      "borderRadiusCorners": {
        "topLeft": "10px",
        "topRight": "10px",
        "bottomRight": "10px",
        "bottomLeft": "10px"
      },
      "shadow": "rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.15) 0px 1px 3px 0px, rgba(255, 255, 255, 0.12) 0px 1px 0px 0px inset"
    },
    "buttonSecondary": {
      "background": "#5A9A6E",
      "textColor": "#FFFFFF",
      "borderRadius": "10px",
      "borderRadiusCorners": {
        "topLeft": "10px",
        "topRight": "10px",
        "bottomRight": "10px",
        "bottomLeft": "10px"
      },
      "shadow": "rgba(0, 0, 0, 0.2) 0px 1px 3px 0px, rgba(255, 255, 255, 0.15) 0px 1px 0px 0px inset, rgba(0, 0, 0, 0) 0px 0px 0px 0px"
    }
  },
  "images": {
    "logo": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI4MDAiIGhlaWdodD0iMjAwIiB2aWV3Qm94PSIwIDAgNDAwIDEwMCIgZmlsbD0ibm9uZSI+CiAgPCEtLSBJY29uIC0tPgogIDxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwLCAxMCkiPgogICAgPHJlY3QgeD0iOCIgeT0iOCIgd2lkdGg9IjY0IiBoZWlnaHQ9IjY0IiByeD0iMTYiIGZpbGw9IiM0YTM3MjgiLz4KICAgIDxnIHRyYW5zZm9ybT0icm90YXRlKC04IDQwIDQyKSI+CiAgICAgIDxyZWN0IHg9IjM2IiB5PSIzMiIgd2lkdGg9IjgiIGhlaWdodD0iMTkuMiIgZmlsbD0iI2YwZWJlMyIvPgogICAgICA8cmVjdCB4PSIzMiIgeT0iMzAuNCIgd2lkdGg9IjE2IiBoZWlnaHQ9IjIuOCIgcng9IjAuOCIgZmlsbD0iI2YwZWJlMyIvPgogICAgICA8cmVjdCB4PSIzMC40IiB5PSI1MCIgd2lkdGg9IjE5LjIiIGhlaWdodD0iMi44IiByeD0iMC44IiBmaWxsPSIjZjBlYmUzIi8+CiAgICAgIDxjaXJjbGUgY3g9IjQwIiBjeT0iMjIuNCIgcj0iNS42IiBmaWxsPSIjYzA4YTMwIi8+CiAgICA8L2c+CiAgPC9nPgogIDwhLS0gVGV4dCAtLT4KICA8dGV4dCB4PSIxMDAiIHk9IjYyIiBmb250LWZhbWlseT0iR2VvcmdpYSwgJ1RpbWVzIE5ldyBSb21hbicsIHNlcmlmIiBmb250LXNpemU9IjQ4IiBmb250LXdlaWdodD0iNzAwIiBmaWxsPSIjZjBlYmUzIj5XaXRoPHRzcGFuIGZpbGw9IiNjMDhhMzAiPklkYTwvdHNwYW4+PC90ZXh0Pgo8L3N2Zz4K",
    "favicon": "https://withida.app/favicon.ico",
    "ogImage": "https://withida.app/social/og-image-1200x630.png",
    "logoHref": "https://withida.app",
    "logoAlt": "WithIda"
  },
  "__llm_logo_reasoning": {
    "selectedIndex": 0,
    "reasoning": "Selected #0 because it is visible, located in the header, links to the homepage, and the alt text matches the brand name 'WithIda'.",
    "confidence": 0.9,
    "source": "llm"
  },
  "__llm_button_reasoning": {
    "primary": {
      "index": 3,
      "text": "Sign up now →",
      "reasoning": "Button #1 ('Sign up now →') uses a vibrant brand color (#C08A30) and has strong CTA text, making it the primary call-to-action."
    },
    "secondary": {
      "index": 11,
      "text": "Approve & send",
      "reasoning": "Button #10 ('Approve & send') uses a different vibrant color (#5A9A6E) and serves as a secondary action, distinct from the primary button's color group."
    },
    "confidence": 0.95
  },
  "personality": {
    "tone": "modern",
    "energy": "medium",
    "targetAudience": "tech-savvy professionals"
  },
  "designSystem": {
    "framework": "tailwind",
    "componentLibrary": ""
  },
  "confidence": {
    "buttons": 0.95,
    "colors": 0.9,
    "overall": 0.925
  },
  "__llm_metadata": {
    "logoSelection": {
      "llmCalled": true,
      "llmSucceeded": true,
      "finalSource": "llm",
      "rawLogoSelection": {
        "selectedLogoIndex": 0,
        "selectedLogoReasoning": "Selected #0 because it is visible, located in the header, links to the homepage, and the alt text matches the brand name 'WithIda'.",
        "confidence": 0.9
      }
    },
    "buttonClassification": {
      "llmCalled": true,
      "llmSucceeded": true
    }
  }
}