Deft
Ask AI

Search

Search skills, authors and topics

fatihaydost / brand-identity-skill

brand-identity

Brand identity sets from one brief - logo, typography and colour palette built together, measured (contrast, colour blindness, glyph coverage, font licences, small-size logo renders) and compared side by side as identity cards, shown on the user's own site, then a brand guidelines kit (PDF, logo files, tokens) for the chosen set. Use for a new brand or any part of one (logo, fonts, colours, or a mix), for refreshing an identity, or for critiquing one, even if the user only says "branding".

Install

npx skills add https://github.com/fatihaydost/brand-identity-skill --skill brand-identity

Cohesion

One voice per set, real difference between sets. Tags: [strong] [limited] [practice].

Mechanism and expression move

  • Mechanism: one sentence naming the single visual idea that yields the mark, the type choice and the palette together ("a ledger's ruled line: hairline-cut wordmark, rule-thin symbol, ink-on-paper palette"): one idea, three expressions. [practice]
  • Expression move: exactly one loud component. Expressive mark → quiet type and palette; expressive palette → plain mark; expressive type → minimal graphics. [practice]
  • Cohesion is consistency with the strategy, not "everything in one style"; art directors also seek an ownable element against competitors (Phillips et al. 2014). [limited] Mark taste-driven choices as taste in rationale.

Axes (identitylib.AXES, −2 first pole … +2 second pole)

Pick 2–4 per brief from the user's adjectives or site signals; the user may correct them.

AxisLogoTypeColour
warm_coolround terminals, organic curves ↔ sharp, geometrichumanist ↔ grotesk, geometrichue family + neutral tint
classic_contemporarymonogram, serif ↔ abstract, wordmarkold-style serif ↔ neo-grotesk, variablecategory code kept ↔ broken
playful_seriousmoving forms ↔ static, symmetricelaborate, high x-height ↔ regularhigh chroma, many hues ↔ low chroma, 1–2
premium_accessiblefew parts, fine lines, space ↔ bold, filledlight weights, contrast serif ↔ bold sansdark, few colours ↔ bright, several
quiet_loudsmall mark ↔ big, dominantone family, narrow scale ↔ display + text, wide scaleneutral-led ↔ coloured surfaces
friend_authorityhand-made ↔ institutionalrounded sans ↔ serif/groteskwarm light ground ↔ dark saturated ground

Axes adapt GV's brand-sprint sliders (Reforge); "real personality is at the ends" (Learning Loop). The "carries" columns are [practice]. The shared vocabulary: logo design dimensions (natural, harmony, elaborate; Henderson & Cote 1998) recur in type (Henderson et al. 2004; weight, flourish shift brand personality, Grohmann et al. 2013). [limited] Scores are reasoned judgement, not measurement.

Making sets differ (warnings, heuristic, uncalibrated)

  • Sets sit at different ends of ≥ 2 axes; three sets in the middle are one idea three times.
  • Each component carries the difference: palette (hue family or light vs dark structure), type (class or clear width/weight), logo (mark type: wordmark, letterform, symbol). Differ in strategy, not only hue.
  • Inside a set, component positions stay within 1 step; a bigger gap is deliberate contrast with a written reason.
  • Refresh: one axis becomes distance from the current identity, evolution → revolution.
  • Three routes, one RECOMMENDED: too many options hurt choice when sets are complex and preferences unclear (Chernev et al. 2015). [strong]

Colour × type

  • Font colour and font design effects on brand personality are independent (Grohmann 2013, study 3) [limited]; that they add up when aimed at one trait is our inference.
  • Thin or unusual faces render fainter than their colour (W3C Understanding 1.4.3, informative). Our heuristic: weight ≤ 300 or a hairline serif gets 4.5:1 even when large.
  • Light text on dark looks bolder; dark mode often drops weight or uses negative GRAD (web.dev). [practice] Reading speed does not require it (Palmén et al. 2023). [limited]
  • Saturated accents vibrate in small text; keep them for display sizes and fills. [practice]

Mixing (brand.py mix)

Clients pick parts from several routes and get a "Frankencomp" (Warren, ALA 2012). [practice] Mix on request only: build set D, re-colour D's logo to D's palette, re-score axes and show the cohesion warning. A conflict with a kept component is a suggestion; the kept part never changes.