sparkles.json
Sparkles Brand Identity
A complete profile of Sparkles's visual system — colors, typography, components, and personality — extracted from https://sparkles.dev. Built for designers, agents, and AI tools.
- Page: https://characterquilt.com/branding/sparkles
- Machine-readable JSON: https://characterquilt.com/branding/sparkles.json
- Per-page llms.txt: https://characterquilt.com/branding/sparkles/llms.txt
Quick Facts
| Field | Value |
|---|---|
| Primary | #54B16C |
| Accent | #54B16C |
| Body Font | Articulat CF |
| Heading Font | Gelica |
Color Palette
- primary: #54B16C
- accent: #54B16C
- background: #FFFFFF
- textPrimary: #18181B
- link: #54B16C
Typography
- primary: Articulat CF — https://fonts.google.com/specimen/Articulat+CF
- heading: Gelica — https://fonts.google.com/specimen/Gelica
Visual Assets
UI Components
- input: background=#27272A, textColor=#FFFFFF, borderColor=#3F3F46, borderRadius=10px, shadow=none
- buttonPrimary: background=#18181B, textColor=#FFFFFF, borderColor=#3F3F46, borderRadius=8px, 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.05) 0px 1px 2px 0px
- buttonSecondary: background=#171717, textColor=#FAFAFA, borderRadius=8px, shadow=none
Brand Personality
Tone: modern · Energy: medium · Audience: developers and project managers
Sparkles Brand in the Wild
Real-world brand assets — ads, campaigns, marketing materials.
- Sparkles - Lovable for Existing Projects | Ship Code Changes Without Engineers
- Mattel PJ Sparkles Commercial 1988
- Sublimation report sparkles : r/Dustbunny_Game
- Sparkles - Landing Page Design | Lapa Ninja
- Starbrite Sparkles Toy Commercial 1991
Working with these fonts
Not found on Google Fonts? Agent Instructions that you can follow if you have permission to use the fonts:
CharacterQuilt.com suggests this flow that can help:
- Open the company's homepage in a browser with DevTools open.
- In the Network tab, filter by "Font" (or by extension: woff2, woff, ttf, otf).
- Hard-reload the page and click around (pricing, blog, careers) — some weights only load on specific routes.
- For each captured font URL: right-click → Save As to download the file locally.
- 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": "Articulat CF",
"role": "body"
},
{
"family": "Gelica",
"role": "heading"
},
{
"family": "Georgia",
"role": "body"
}
],
"colors": {
"primary": "#54B16C",
"accent": "#54B16C",
"background": "#FFFFFF",
"textPrimary": "#18181B",
"link": "#54B16C"
},
"typography": {
"fontFamilies": {
"primary": "Articulat CF",
"heading": "Gelica"
},
"fontStacks": {
"heading": [
"Gelica",
"Georgia",
"serif"
],
"body": [
"ui-sans-serif",
"system-ui",
"sans-serif",
"Apple Color Emoji",
"Segoe UI Emoji",
"Segoe UI Symbol",
"Noto Color Emoji"
],
"paragraph": [
"Articulat CF",
"system-ui",
"sans-serif"
]
},
"fontSizes": {
"h1": "60px",
"h2": "48px",
"body": "20px"
}
},
"spacing": {
"baseUnit": 8,
"borderRadius": "0px"
},
"components": {
"input": {
"background": "#27272A",
"textColor": "#FFFFFF",
"borderColor": "#3F3F46",
"borderRadius": "10px",
"borderRadiusCorners": {
"topLeft": "10px",
"topRight": "10px",
"bottomRight": "10px",
"bottomLeft": "10px"
},
"shadow": "none"
},
"buttonPrimary": {
"background": "#18181B",
"textColor": "#FFFFFF",
"borderColor": "#3F3F46",
"borderRadius": "8px",
"borderRadiusCorners": {
"topLeft": "8px",
"topRight": "8px",
"bottomRight": "8px",
"bottomLeft": "8px"
},
"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.05) 0px 1px 2px 0px"
},
"buttonSecondary": {
"background": "#171717",
"textColor": "#FAFAFA",
"borderRadius": "8px",
"borderRadiusCorners": {
"topLeft": "8px",
"topRight": "8px",
"bottomRight": "8px",
"bottomLeft": "8px"
},
"shadow": "none"
}
},
"images": {
"logo": "https://sparkles.dev/sparkles-logotype.svg",
"favicon": "https://sparkles.dev/favicon.ico",
"ogImage": null,
"logoHref": "/",
"logoAlt": "Sparkles"
},
"__llm_logo_reasoning": {
"selectedIndex": 0,
"reasoning": "Selected #0 because it is visible, medium-sized, located in the header, and links to the homepage, matching the brand 'Sparkles'.",
"confidence": 0.95,
"source": "llm"
},
"__llm_button_reasoning": {
"primary": {
"index": 0,
"text": "Subscribe",
"reasoning": "The 'Subscribe' button is likely the primary CTA due to its action-oriented text and prominent placement. It shares the same color group as another button but stands out due to its clear call to action."
},
"secondary": {
"index": 2,
"text": "Book a call",
"reasoning": "The 'Book a call' button with a different background color (#171717) serves as a secondary action, offering an alternative engagement option."
},
"confidence": 0.9
},
"personality": {
"tone": "modern",
"energy": "medium",
"targetAudience": "developers and project managers"
},
"designSystem": {
"framework": "tailwind",
"componentLibrary": ""
},
"confidence": {
"buttons": 0.9,
"colors": 0.9,
"overall": 0.9
},
"__llm_metadata": {
"logoSelection": {
"llmCalled": true,
"llmSucceeded": true,
"finalSource": "llm",
"rawLogoSelection": {
"selectedLogoIndex": 0,
"selectedLogoReasoning": "Selected #0 because it is visible, medium-sized, located in the header, and links to the homepage, matching the brand 'Sparkles'.",
"confidence": 0.95
}
},
"buttonClassification": {
"llmCalled": true,
"llmSucceeded": true
}
}
}