@kolkrabbi/kol-styleguide 0.5.3 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@kolkrabbi/kol-styleguide",
3
- "version": "0.5.3",
3
+ "version": "0.6.0",
4
4
  "private": false,
5
- "description": "KOL style-guide / brand-guide component set — the visual specimens a brand manual is built from: color anatomy + combination lab, logo construction / clearspace / scaling, mood tiles, type blocks, and asset spec tables. Raided from the apps/brand styleguide. Also the brand tool itself — `Brand` (BrandBook ⇄ BrandAssets) renders a whole brand book from one brand manifest. Sits above @kolkrabbi/kol-{theme,icons,component,framework}.",
5
+ "description": "Brand guide components and the brand tool",
6
6
  "license": "MIT",
7
7
  "type": "module",
8
8
  "main": "./src/index.js",
@@ -19,10 +19,10 @@
19
19
  "react-dom": "^18.3.0 || ^19.0.0"
20
20
  },
21
21
  "devDependencies": {
22
- "@kolkrabbi/kol-component": "^0.230.0",
23
- "@kolkrabbi/kol-framework": "^0.46.0",
24
- "@kolkrabbi/kol-theme": "^0.157.0",
25
- "@kolkrabbi/kol-icons": "^0.29.1"
22
+ "@kolkrabbi/kol-component": "^0.237.0",
23
+ "@kolkrabbi/kol-icons": "^0.33.0",
24
+ "@kolkrabbi/kol-framework": "^0.48.0",
25
+ "@kolkrabbi/kol-theme": "^0.163.0"
26
26
  },
27
27
  "files": [
28
28
  "src",
package/src/Brand.jsx CHANGED
@@ -7,7 +7,7 @@ import { BRAND_VIEWS, brandToc, scrollToAnchor } from './brandBook.js'
7
7
  /* taxonomy-ok: organism — the brand tool: BrandBook ⇄ BrandAssets under a view switch, with the page's section rail */
8
8
 
9
9
  /**
10
- * Brand — the whole brand tool: the brand book's two pages over one manifest, BRAND (the identity)
10
+ * Brand — The whole brand tool. the whole brand tool: the brand book's two pages over one manifest, BRAND (the identity)
11
11
  * and ASSETS (what you download or reproduce), a switch between them, and the page's sections on a
12
12
  * rail. ONE component so every app that carries a brand renders the same tool (apps/brand alone,
13
13
  * media-hub's Brand tab) — kol-notes' `Notes` shape.
@@ -3,7 +3,7 @@ import { ContentCollection, FullscreenOverlay, Table } from '@kolkrabbi/kol-comp
3
3
  import PageSection from '@kolkrabbi/kol-framework/src/PageSection.jsx'
4
4
  import AssetTable from './AssetTable.jsx'
5
5
  import AssetCard from './AssetCard.jsx'
6
- import { ProfileAvatar } from './SocialMocks.jsx'
6
+ import { BrandAvatar } from './SocialMocks.jsx'
7
7
  import { BusinessCardBack, BusinessCardFront, EmailSignature, Envelope, Letterhead } from './StationeryMocks.jsx'
8
8
  import BrandMark from './BrandMark.jsx'
9
9
  import { Prose, SectionIndex } from './BrandBook.jsx'
@@ -29,7 +29,7 @@ const brandedAssetCols = [
29
29
  ]
30
30
 
31
31
  /**
32
- * BrandAssets — the ASSETS page of the brand tool: what you download or reproduce. Logos (the
32
+ * BrandAssets — The brand book's assets page. the ASSETS page of the brand tool: what you download or reproduce. Logos (the
33
33
  * mark table, with the ink toggle, zoom and recoloured download), the branded-asset register,
34
34
  * stationery, social post sizes and profile avatars.
35
35
  *
@@ -134,7 +134,7 @@ export default function BrandAssets({ brand, Logo, logoSources }) {
134
134
  <PageSection key={s.key} {...head}>
135
135
  <div className="kol-grid mt-8 items-start">
136
136
  {brand.social.avatars.map(({ bg, polarity }, i) => (
137
- <AssetCard key={i}><ProfileAvatar mark={mark(marks.avatar, { className: 'w-1/2' })} bg={bg} polarity={polarity} /></AssetCard>
137
+ <AssetCard key={i}><BrandAvatar mark={mark(marks.avatar, { className: 'w-1/2' })} bg={bg} polarity={polarity} /></AssetCard>
138
138
  ))}
139
139
  </div>
140
140
  </PageSection>
package/src/BrandBook.jsx CHANGED
@@ -11,7 +11,7 @@ import { typeSections } from './typeSpecimen.js'
11
11
  /* taxonomy-ok: organism — the brand book's identity page: PageHero + PageSection chapters over LogoCard, Swatch and the type specimens */
12
12
 
13
13
  /**
14
- * BrandBook — the BRAND page of the brand tool: the identity, one scrolling page of chapters
14
+ * BrandBook — The brand book's identity page. the BRAND page of the brand tool: the identity, one scrolling page of chapters
15
15
  * (About · Tone · Look · Logo · Lockups · Color · Typography) under a hero and a chapter index.
16
16
  *
17
17
  * kol-olina's apps/brand `pages/brand/*`, carried class-for-class; what was that client's copy now
package/src/LogoCard.jsx CHANGED
@@ -3,7 +3,7 @@ import ClearspaceDiagram, { hasFramework } from './ClearspaceDiagram.jsx'
3
3
  import { ToggleSwitch } from '@kolkrabbi/kol-component'
4
4
 
5
5
  /**
6
- * LogoCard — framed logo specimen tile with a clearspace / grid toggle.
6
+ * LogoCard — A logo specimen tile. framed logo specimen tile with a clearspace / grid toggle.
7
7
  *
8
8
  * A brand-manual logo plate: the mark centered in a padded frame, an optional
9
9
  * caption, and — when construction overlays are supplied — a toggle that reveals
@@ -26,7 +26,7 @@
26
26
  * const brand = { mark: <Asset name="logomark" />, palette: { accent: '#F3F1EC' } }
27
27
  * <PostPhoto {...brand} />
28
28
  * <StoryType {...brand} quote={<>Quiet,<br/>considered.</>} />
29
- * <ProfileAvatar {...brand} />
29
+ * <BrandAvatar {...brand} />
30
30
  *
31
31
  * One object spread into each mock is the intended call shape — no context, no
32
32
  * provider: a brand book renders these in a grid and already holds the object.
@@ -61,7 +61,7 @@ const resolve = (palette, fonts) => [
61
61
  ]
62
62
 
63
63
  /**
64
- * PostPhoto — feed post, photo ground with the mark in the corner (1:1).
64
+ * PostPhoto — A photo feed post. feed post, photo ground with the mark in the corner (1:1).
65
65
  *
66
66
  * @param {ReactNode} mark - The brand mark
67
67
  * @param {Object} palette - Partial override of DEFAULT_MOCK_PALETTE
@@ -83,7 +83,7 @@ export function PostPhoto({ mark, palette, fonts, media, className = '' }) {
83
83
  }
84
84
 
85
85
  /**
86
- * PostType — feed post, type-driven quote on the accent ground (1:1).
86
+ * PostType — A type-driven feed post. feed post, type-driven quote on the accent ground (1:1).
87
87
  *
88
88
  * @param {ReactNode} mark - The brand mark
89
89
  * @param {Object} palette - Partial override of DEFAULT_MOCK_PALETTE
@@ -107,7 +107,7 @@ export function PostType({ mark, palette, fonts, quote = 'Your line here.', clas
107
107
  }
108
108
 
109
109
  /**
110
- * PostProduct — feed post, product flat with a caption row (1:1).
110
+ * PostProduct — A product feed post. feed post, product flat with a caption row (1:1).
111
111
  *
112
112
  * @param {ReactNode} mark - The brand mark
113
113
  * @param {Object} palette - Partial override of DEFAULT_MOCK_PALETTE
@@ -153,7 +153,7 @@ export function PostProduct({
153
153
  }
154
154
 
155
155
  /**
156
- * PostEditorial — feed post, half photo / half type (1:1).
156
+ * PostEditorial — A half photo and half type post. feed post, half photo / half type (1:1).
157
157
  *
158
158
  * @param {ReactNode} mark - The brand mark
159
159
  * @param {Object} palette - Partial override of DEFAULT_MOCK_PALETTE
@@ -194,7 +194,7 @@ export function PostEditorial({
194
194
  }
195
195
 
196
196
  /**
197
- * StoryPhoto — story frame, full-bleed photo with the mark low-left (9:16).
197
+ * StoryPhoto — A full-bleed photo story. story frame, full-bleed photo with the mark low-left (9:16).
198
198
  *
199
199
  * @param {ReactNode} mark - The brand mark
200
200
  * @param {Object} palette - Partial override of DEFAULT_MOCK_PALETTE
@@ -216,7 +216,7 @@ export function StoryPhoto({ mark, palette, fonts, media, className = '' }) {
216
216
  }
217
217
 
218
218
  /**
219
- * StoryType — story frame, type-driven with the mark centred low (9:16).
219
+ * StoryType — A type-driven story. story frame, type-driven with the mark centred low (9:16).
220
220
  *
221
221
  * @param {ReactNode} mark - The brand mark
222
222
  * @param {Object} palette - Partial override of DEFAULT_MOCK_PALETTE — `ink` is the ground here and `accent` the type
@@ -240,7 +240,9 @@ export function StoryType({ mark, palette, fonts, quote = 'Your line here.', cla
240
240
  }
241
241
 
242
242
  /**
243
- * ProfileAvatar — the round profile mark (1:1).
243
+ * BrandAvatar — The brand's round profile mark. the round profile mark (1:1). Renamed from
244
+ * `ProfileAvatar` 2026-10-01 (user ruling): it is a brand-book mock of the brand's mark in a social
245
+ * profile frame, not a second `Avatar` — that one is a person. `ProfileAvatar` is the alias.
244
246
  *
245
247
  * The forks called it `Avatar`, which is already a kol-component atom (a
246
248
  * PERSON's avatar). Two packages exporting one name is a collision the roster
@@ -252,7 +254,7 @@ export function StoryType({ mark, palette, fonts, quote = 'Your line here.', cla
252
254
  * @param {'dark'|'light'} polarity - Which way the mark inks against that ground (default: 'dark')
253
255
  * @param {string} className - Extra classes on the frame
254
256
  */
255
- export function ProfileAvatar({ mark, palette, bg, polarity = 'dark', className = '' }) {
257
+ export function BrandAvatar({ mark, palette, bg, polarity = 'dark', className = '' }) {
256
258
  const [pal] = resolve(palette)
257
259
  return (
258
260
  <div
@@ -263,3 +265,6 @@ export function ProfileAvatar({ mark, palette, bg, polarity = 'dark', className
263
265
  </div>
264
266
  )
265
267
  }
268
+
269
+ /** @deprecated 2026-10-01 — use BrandAvatar. Drops when nobody imports it (04-retirements.md). */
270
+ export const ProfileAvatar = BrandAvatar
@@ -79,7 +79,7 @@ const capsStyle = (fonts) => ({
79
79
  })
80
80
 
81
81
  /**
82
- * BusinessCardFront — the mark, centred, on paper.
82
+ * BusinessCardFront — The front of a business card. the mark, centred, on paper.
83
83
  *
84
84
  * @param {ReactNode} mark - The brand mark; sized to 70% of the card height
85
85
  * @param {Object} palette - Partial override of DEFAULT_STATIONERY_PALETTE
@@ -128,7 +128,7 @@ export function BusinessCardBack({ info, palette, fonts, className = '' }) {
128
128
  }
129
129
 
130
130
  /**
131
- * Envelope — DL, mark top-left, return address bottom-right, fold line.
131
+ * Envelope — A DL envelope. DL, mark top-left, return address bottom-right, fold line.
132
132
  *
133
133
  * @param {ReactNode} mark - The brand mark, in an 8-unit-tall box
134
134
  * @param {Object} info - Partial override of DEFAULT_BRAND_INFO — reads identity.name and the studio block
@@ -162,7 +162,7 @@ export function Envelope({ mark, info, palette, fonts, className = '' }) {
162
162
  }
163
163
 
164
164
  /**
165
- * Letterhead — A4: wordmark, body, contact rule at the foot.
165
+ * Letterhead — An A4 letterhead. A4: wordmark, body, contact rule at the foot.
166
166
  *
167
167
  * @param {ReactNode} mark - The brand mark (a wordmark in the forks), in a 10-unit-tall box
168
168
  * @param {Object} info - Partial override of DEFAULT_BRAND_INFO — reads identity.founder, contact.web, contact.phone, studio.city, studio.country
@@ -214,7 +214,7 @@ export function Letterhead({ mark, info, palette, fonts, children, signoff = 'Wa
214
214
  }
215
215
 
216
216
  /**
217
- * LetterheadCorrespondence — the richer sheet: mark + address block, a
217
+ * LetterheadCorrespondence — A letterhead for correspondence. the richer sheet: mark + address block, a
218
218
  * date/ref/to grid, the body, a signed signoff, and a legal footer.
219
219
  *
220
220
  * The forks called this `LetterheadB`. Renamed on the way in — a B suffix says
@@ -350,7 +350,7 @@ export function LetterheadCorrespondence({
350
350
  export const LetterheadB = LetterheadCorrespondence
351
351
 
352
352
  /**
353
- * EmailSignature — mark, rule, name and contact line.
353
+ * EmailSignature — An email signature. mark, rule, name and contact line.
354
354
  *
355
355
  * @param {ReactNode} mark - The brand mark, in a 16-unit square
356
356
  * @param {Object} info - Partial override of DEFAULT_BRAND_INFO — reads identity.founder, identity.name, contact.email, contact.web
package/src/Swatch.jsx CHANGED
@@ -1,7 +1,7 @@
1
1
  import { ColorSwatch } from '@kolkrabbi/kol-component'
2
2
 
3
3
  /**
4
- * Swatch — the DOCUMENTED swatch: a specimen bar over its meta row (name, hex),
4
+ * Swatch — A documented color swatch. the DOCUMENTED swatch: a specimen bar over its meta row (name, hex),
5
5
  * with an optional canonical-anchor dot.
6
6
  *
7
7
  * `ColorSwatch` (kol-component) is the chip alone — a fixed-size pressable atom
package/src/index.js CHANGED
@@ -27,7 +27,7 @@ export { generatePalette, fgOn, hexToHsl, hslToHex, GENERATION_MODES } from './c
27
27
  export { default as AssetCard } from './AssetCard.jsx'
28
28
  export { default as Swatch } from './Swatch.jsx'
29
29
  export {
30
- PostPhoto, PostType, PostProduct, PostEditorial, StoryPhoto, StoryType, ProfileAvatar,
30
+ PostPhoto, PostType, PostProduct, PostEditorial, StoryPhoto, StoryType, BrandAvatar, ProfileAvatar,
31
31
  DEFAULT_MOCK_PALETTE, DEFAULT_MOCK_FONTS,
32
32
  } from './SocialMocks.jsx'
33
33
  export {