Skip to main content
Brand
Changelogv0.44

Visual identity

Ben Snyder

The personal brand of Ben Snyder, founder of Snyder Tech and Bethlehem Capital.

Light surfacePrimary wordmark
Dark surfaceApproved dark artwork

Compact identity

Favicon scale

compactLogo
16px
32px
48px
Dark

Semantic system

Brand colour

data-brand
PrimaryIdentitySecondarySupportAccentHighlightNeutralContent
Brand ID
benpsnyder
Token package
@brandos/tokens/css/benpsnyder
Heading
Fraunces
Body
Inter Tight

01.01 · Bpsslate ramp

19 shades of Bpsslate

Bpsslate identity ramp generated from canonical benpsnyder token data.

01.02 · Bpsember ramp

19 shades of Bpsember

Bpsember identity ramp generated from canonical benpsnyder token data.

01.03 · Bpsgraphite ramp

19 shades of Bpsgraphite

Bpsgraphite identity ramp generated from canonical benpsnyder token data.

01.04 · Bps Gray ramp

19 shades of Bps Gray

Bps Gray identity ramp generated from canonical benpsnyder token data.

01.05 · Semantic slots

Meaning over hue

Components consume semantic slots, never raw ramps. The hue can evolve; the meaning shouldn't.

Brand PrimaryAnchor identity & CTAs
Token
--semantic-brand-primary
Class
bg-primary
Brand AccentHighlights & accents
Token
--semantic-brand-accent
Class
bg-accent
Surface 1Card surfaces & chrome
Token
--semantic-surface-1
Class
bg-base-100
ContentBody & headings text
Token
--semantic-content-primary
Class
text-base-content
InformativeInformation & neutral cues
Token
--semantic-status-informative
Class
text-info
SuccessPositive & confirm states
Token
--semantic-status-success
Class
text-success
WarningCaution & warning states
Token
--semantic-status-warning
Class
text-warning
ErrorDestructive & error states
Token
--semantic-status-error
Class
text-error

02 · Typography

Fraunces on display · Inter Tight for everything else

Heading and body families resolve from the canonical effective specification and its font registry.

Heading typefaceFraunces
--brandOS-font-heading
Display specimen

Ben Snyder moves with purpose.

Family
Fraunces
Registry ID
fraunces
Primary use
Display and hierarchy
  • H1 · DisplayThe system in practice
  • H2 · Section106 brands, one system
  • H3 · CardProfile contract
Size
4xl
Leading
Tight
Weight
Semibold
Body typefaceInter Tight
--brandOS-font-body
Reading specimen

Clear systems make complex decisions feel simple, consistent, and unmistakably on brand.

Family
Inter Tight
Registry ID
inter-tight
Primary use
Reading and interface
  • LedeA clear, generous opening that orients the reader fast.
  • BodyStandard paragraph text. The quick brown fox jumps over the lazy dog.
  • CaptionSmall print, footnotes, and metadata.
Size
Base
Leading
Relaxed
Weight
Regular

03 · Effective specification

Registry-resolved visual contract

One resolved source for every visual rule

Version 1.0.0, effective . Every rule below is generated from the canonical registry projection.

Resolution fingerprintThree-source effective identity
01Defaults
1.0.0
02Brand
1.0.0
03Content
rev a3b1ccab

The content revision is a checksum of the authored specification. It changes whenever any rule changes, so two profiles with the same revision are guaranteed identical.

Authored Direct
6
Inherited Shared
0
Defaulted System
6
01

Colour and accessible pairings

authored

Token usage, print values, gradients, accent discipline, and derived WCAG pairings.

23 resolved values
PrimaryBrand Primary
AccentBrand Accent
SurfaceSurface 1
ContentContent Primary
Brand gradientPrimary to accent
InfoStatus Informative
SuccessStatus Success
WarningStatus Warning
ErrorStatus Error
Technical details23 canonical values and registry paths
Accent Token Refs 0
--semantic-brand-primaryColors · Accent token refs · #1
Accent Token Refs 1
--semantic-brand-accentColors · Accent token refs · #2
Body Surface Token Ref
--semantic-surface-1Colors · Body surface token ref
Body Text Token Ref
--semantic-content-primaryColors · Body text token ref
Groups Colors Gradients
No additional entriesColors · Gradients
Enforceable
NoColors · Guidance · #1 · Enforceable
Id
steel-carries-the-pageColors · Guidance · #1 · Id
Text
Bethlehem steel slate (--semantic-brand-primary) carries headings, links, navigation and the logo tile on warm paper surfaces. It is the voice of the page.Colors · Guidance · #1 · Text
Enforceable
NoColors · Guidance · #2 · Enforceable
Id
ember-sparinglyColors · Guidance · #2 · Id
Text
Forge ember (--semantic-brand-accent) is used sparingly, for the one primary action in a view, a live highlight or the spark in the mark. Never for body text, large fills, section backgrounds or decoration.Colors · Guidance · #2 · Text
Enforceable
NoColors · Guidance · #3 · Enforceable
Id
text-on-fillsColors · Guidance · #3 · Id
Text
Set text on slate or ember fills only with the matching -content token (--semantic-brand-primary-content, --semantic-brand-accent-content); never on a mid-tone tint.Colors · Guidance · #3 · Text
Groups Colors Print Values
No additional entriesColors · Print values
Content Token Ref
--semantic-status-error-contentColors · Status · Error · Content token ref
Token Ref
--semantic-status-errorColors · Status · Error · Token ref
Content Token Ref
--semantic-status-informative-contentColors · Status · Informative · Content token ref
Token Ref
--semantic-status-informativeColors · Status · Informative · Token ref
Content Token Ref
--semantic-status-success-contentColors · Status · Success · Content token ref
Token Ref
--semantic-status-successColors · Status · Success · Token ref
Content Token Ref
--semantic-status-warning-contentColors · Status · Warning · Content token ref
Token Ref
--semantic-status-warningColors · Status · Warning · Token ref
02

Typography

authored

Font roles, the base type ladder, and sparse responsive overrides.

25 resolved values
Canonical hierarchy

A distinct voice, built to scale.

The quick brown fox jumps over the lazy dog. Clear typography gives every branded surface a recognisable rhythm.

Caption and supporting metadata remain readable at compact sizes.
Aa
HeadingFraunces
Text 4xl2.5–4rem
Aa
BodyInter Tight
Text Base0.875–1rem
Aa
MetaJetBrains Mono
Text Sm0.75–0.875rem

The base hierarchy scales without brand-specific overrides.

Technical details25 canonical values and registry paths
Font Id
frauncesTypography · Base ladder · #1 · Font id
Id
headingTypography · Base ladder · #1 · Id
Line Height Token Ref
--brandOS-leading-tightTypography · Base ladder · #1 · Line height token ref
Size Token Ref
--brandOS-text-4xlTypography · Base ladder · #1 · Size token ref
Weight Token Ref
--brandOS-font-weight-semiboldTypography · Base ladder · #1 · Weight token ref
Font Id
inter-tightTypography · Base ladder · #2 · Font id
Id
bodyTypography · Base ladder · #2 · Id
Line Height Token Ref
--brandOS-leading-relaxedTypography · Base ladder · #2 · Line height token ref
Size Token Ref
--brandOS-text-baseTypography · Base ladder · #2 · Size token ref
Weight Token Ref
--brandOS-font-weight-regularTypography · Base ladder · #2 · Weight token ref
Font Id
jetbrains-monoTypography · Base ladder · #3 · Font id
Id
metaTypography · Base ladder · #3 · Id
Line Height Token Ref
--brandOS-leading-normalTypography · Base ladder · #3 · Line height token ref
Size Token Ref
--brandOS-text-smTypography · Base ladder · #3 · Size token ref
Weight Token Ref
--brandOS-font-weight-regularTypography · Base ladder · #3 · Weight token ref
Enforceable
NoTypography · Guidance · #1 · Enforceable
Id
serif-voice-sans-workTypography · Guidance · #1 · Id
Text
Fraunces is the editorial voice: headlines, pull quotes, essay titles and the wordmark, set at display optical sizes with soft terminals. Inter Tight carries body copy, navigation, labels and forms. Never set long body copy or controls in Fraunces.Typography · Guidance · #1 · Text
Enforceable
NoTypography · Guidance · #2 · Enforceable
Id
mono-for-factsTypography · Guidance · #2 · Id
Text
JetBrains Mono is reserved for dates, figures, code, and small metadata such as reading time or post dates; never for headings or paragraphs.Typography · Guidance · #2 · Text
Enforceable
NoTypography · Guidance · #3 · Enforceable
Id
one-italicTypography · Guidance · #3 · Id
Text
A headline may set one word in Fraunces italic for emphasis. Never more than one, and never for decoration.Typography · Guidance · #3 · Text
Groups Typography Responsive Overrides
No additional entriesTypography · Responsive overrides
03

Logo usage

authored

Clear space, minimum sizes, prohibited uses, and approved lockups.

26 resolved values
Technical details26 canonical values and registry paths
Clear Space Token Ref
--brandOS-space-4Logos · Clear space token ref
Alignment
horizontalLogos · Co branding rules · #1 · Alignment
Enforceable
NoLogos · Co branding rules · #1 · Guidance · #1 · Enforceable
Id
ventures-follow-noteLogos · Co branding rules · #1 · Guidance · #1 · Id
Text
When shown with Snyder Tech, Bethlehem Capital or other ventures, the personal mark leads and each venture appears in its own registered brand at equal or smaller height; never restyle a venture logo in this palette.Logos · Co branding rules · #1 · Guidance · #1 · Text
Id
ventures-followLogos · Co branding rules · #1 · Id
Spacing Token Ref
--brandOS-space-6Logos · Co branding rules · #1 · Spacing token ref
Context
Full lockup (benpsnyder-logo): the B tile with the ember spark and the Fraunces Ben Snyder wordmarkLogos · Minimum sizes · #1 · Context
Id
logoLogos · Minimum sizes · #1 · Id
Width Px
140Logos · Minimum sizes · #1 · Width px
Context
B tile alone (brand-favicons/benpsnyder) for favicons, avatars and app iconsLogos · Minimum sizes · #2 · Context
Id
faviconLogos · Minimum sizes · #2 · Id
Width Px
16Logos · Minimum sizes · #2 · Width px
Primary Asset Id
benpsnyder-logo-inkLogos · Primary asset id
Enforceable
NoLogos · Prohibited uses · #1 · Enforceable
Id
do-not-distortLogos · Prohibited uses · #1 · Id
Text
Do not stretch, skew, rotate, outline or add effects to a registered mark.Logos · Prohibited uses · #1 · Text
Enforceable
NoLogos · Prohibited uses · #2 · Enforceable
Id
no-retypesetLogos · Prohibited uses · #2 · Id
Text
Do not retypeset the wordmark in a live font; always use the outlined registered artwork.Logos · Prohibited uses · #2 · Text
Enforceable
NoLogos · Prohibited uses · #3 · Enforceable
Id
spark-stays-emberLogos · Prohibited uses · #3 · Id
Text
The spark is the only ember in the logo. Do not recolour the tile or wordmark ember, and do not detach the spark or use it as a standalone bullet or icon.Logos · Prohibited uses · #3 · Text
Enforceable
NoLogos · Prohibited uses · #4 · Enforceable
Id
tone-matches-surfaceLogos · Prohibited uses · #4 · Id
Text
Use the dark artwork on light surfaces and the light artwork on dark surfaces; use the ink variant for single-colour contexts.Logos · Prohibited uses · #4 · Text
04

Registered assets

defaulted

Canonical marks, imagery, and graphic assets referenced by stable identifiers.

2 resolved values
Primary lockupLight surface
Compact markApp scale
Dark surfaceApproved artwork
Canonical profile artwork registered
Technical details2 canonical values and registry paths
Groups Assets Approved Asset Ids
No additional entriesAssets · Approved asset ids
Groups Assets Guidance
No additional entriesAssets · Guidance
05

Responsive layout

defaulted

Breakpoint ranges, containers, grids, columns, and margins.

34 resolved values
Mobile0px+
4columns
Tablet640px+
8columns
Desktop1024px+
12columns

Margins and containers expand progressively while content order stays stable.

Technical details34 canonical values and registry paths
Columns
4Responsive layout · Breakpoints · #1 · Columns
Grid Id
mobile-gridResponsive layout · Breakpoints · #1 · Grid id
Id
mobileResponsive layout · Breakpoints · #1 · Id
Margin Token Ref
--brandOS-space-4Responsive layout · Breakpoints · #1 · Margin token ref
Max Viewport Px
639Responsive layout · Breakpoints · #1 · Max viewport px
Min Viewport Px
0Responsive layout · Breakpoints · #1 · Min viewport px
Columns
8Responsive layout · Breakpoints · #2 · Columns
Container Width Px
960Responsive layout · Breakpoints · #2 · Container width px
Grid Id
tablet-gridResponsive layout · Breakpoints · #2 · Grid id
Id
tabletResponsive layout · Breakpoints · #2 · Id
Margin Token Ref
--brandOS-space-6Responsive layout · Breakpoints · #2 · Margin token ref
Max Viewport Px
1023Responsive layout · Breakpoints · #2 · Max viewport px
Min Viewport Px
640Responsive layout · Breakpoints · #2 · Min viewport px
Columns
12Responsive layout · Breakpoints · #3 · Columns
Container Width Px
1280Responsive layout · Breakpoints · #3 · Container width px
Grid Id
desktop-gridResponsive layout · Breakpoints · #3 · Grid id
Id
desktopResponsive layout · Breakpoints · #3 · Id
Margin Token Ref
--brandOS-space-8Responsive layout · Breakpoints · #3 · Margin token ref
Min Viewport Px
1024Responsive layout · Breakpoints · #3 · Min viewport px
Columns
4Responsive layout · Grids · #1 · Columns
Gutter Token Ref
--brandOS-space-4Responsive layout · Grids · #1 · Gutter token ref
Id
mobile-gridResponsive layout · Grids · #1 · Id
Margin Token Ref
--brandOS-space-4Responsive layout · Grids · #1 · Margin token ref
Columns
8Responsive layout · Grids · #2 · Columns
Gutter Token Ref
--brandOS-space-5Responsive layout · Grids · #2 · Gutter token ref
Id
tablet-gridResponsive layout · Grids · #2 · Id
Margin Token Ref
--brandOS-space-6Responsive layout · Grids · #2 · Margin token ref
Columns
12Responsive layout · Grids · #3 · Columns
Gutter Token Ref
--brandOS-space-6Responsive layout · Grids · #3 · Gutter token ref
Id
desktop-gridResponsive layout · Grids · #3 · Id
Margin Token Ref
--brandOS-space-8Responsive layout · Grids · #3 · Margin token ref
Enforceable
NoResponsive layout · Guidance · #1 · Enforceable
Id
content-first-responsiveResponsive layout · Guidance · #1 · Id
Text
Choose responsive changes from content pressure and the declared non-overlapping ranges.Responsive layout · Guidance · #1 · Text
06

Iconography

defaulted

Approved library, family, style, weight, licence, and custom exceptions.

12 resolved values
Family
Material Symbols
Style
Rounded
Weight
400
Licence
Apache License 2.0

No custom icon exceptions. One visual language stays consistent.

Technical details12 canonical values and registry paths
Groups Iconography Custom Icon Asset Ids
No additional entriesIconography · Custom icon asset ids
Enforceable
NoIconography · Guidance · #1 · Enforceable
Id
icons-are-symbolsIconography · Guidance · #1 · Id
Text
Use the approved library for interface symbols; register custom brand marks as assets.Iconography · Guidance · #1 · Text
Family
Material SymbolsIconography · Library · Family
Id
material-symbols-roundedIconography · Library · Id
Name
Apache License 2.0Iconography · Library · License · Name
Reference
https://github.com/google/material-design-icons/blob/master/LICENSEIconography · Library · License · Reference
Spdx Id
Apache-2.0Iconography · Library · License · Spdx id
Source
https://fonts.google.com/iconsIconography · Library · Source
Style
RoundedIconography · Library · Style
Weight
400Iconography · Library · Weight
07

Graphic systems

defaulted

Named visual systems and their registered asset and taxonomy references.

2 resolved values
01
Core SystemBrand
0 assets
Technical details2 canonical values and registry paths
Groups Graphics Systems
No additional entriesGraphics · Systems
Groups Graphics Taxonomies
No additional entriesGraphics · Taxonomies
08

Imagery direction

authored

Photography, product imagery, composition, subject, and treatment guidance.

13 resolved values
02 · Subject

Ground the story in the Lehigh Valley: Bethlehem, the SteelStacks and blast furnaces, brick, river light and Main Street, shot honestly rather than as tourism postcards.

03 · Treatment

Ember may appear in imagery only as a small highlight (a spark, a lit window, one annotated callout); never as a colour wash or filter.

Direction is governed without unapproved stock imagery
Technical details13 canonical values and registry paths
Groups Imagery Approved Asset Ids
No additional entriesImagery · Approved asset ids
Enforceable
NoImagery · Photography · #1 · Enforceable
Id
imagery-01Imagery · Photography · #1 · Id
Text
Use warm, real photography of real people and places: natural light, candid working moments, family and community, never staged portraits against seamless backdrops.Imagery · Photography · #1 · Text
Enforceable
NoImagery · Photography · #2 · Enforceable
Id
imagery-02Imagery · Photography · #2 · Id
Text
Ground the story in the Lehigh Valley: Bethlehem, the SteelStacks and blast furnaces, brick, river light and Main Street, shot honestly rather than as tourism postcards.Imagery · Photography · #2 · Text
Enforceable
NoImagery · Photography · #3 · Enforceable
Id
imagery-03Imagery · Photography · #3 · Id
Text
Avoid stock success cliches: no handshakes, mountain summits, rocket ships, trophies, champagne, suits pointing at charts or rising-arrow graphics.Imagery · Photography · #3 · Text
Enforceable
NoImagery · Product imagery · #1 · Enforceable
Id
ember-highlightImagery · Product imagery · #1 · Id
Text
Ember may appear in imagery only as a small highlight (a spark, a lit window, one annotated callout); never as a colour wash or filter.Imagery · Product imagery · #1 · Text
09

Shared components

defaulted

Shared component participation and bounded state-token overrides.

8 resolved values
Ben Snyder interfaceShared system
FoundationActions and fields
04 states
Primary actionSecondary
Helper text follows the field.Valid
FeedbackStatus and content
Live
ApprovedIn reviewDraft
Brand-ready componentSemantic tokens control every state.
Next reviewIdentity system check
Aug 28
Registry coverageGoverned participation1
Button2 state overrides
Shared primitives inherit this brand without component-specific colour values.
Technical details8 canonical values and registry paths
Component Id
buttonComponents · Participation · #1 · Component id
Groups Components Participation 0 Guidance
No additional entriesComponents · Participation · #1 · Guidance
State
defaultComponents · Participation · #1 · State overrides · #1 · State
Token Ref
--semantic-brand-primaryComponents · Participation · #1 · State overrides · #1 · Token ref
Token Slot
backgroundComponents · Participation · #1 · State overrides · #1 · Token slot
State
defaultComponents · Participation · #1 · State overrides · #2 · State
Token Ref
--semantic-brand-primary-contentComponents · Participation · #1 · State overrides · #2 · Token ref
Token Slot
contentComponents · Participation · #1 · State overrides · #2 · Token slot
10

Data visualisation

defaulted

Categorical, sequential, and diverging palette intent derived from brand tokens.

10 resolved values
Categorical3 roles
Sequential2 steps
Diverging2 steps

Brand-derived colour intent supports comparison without changing the underlying data meaning.

Technical details10 canonical values and registry paths
Categorical Token Refs 0
--semantic-brand-primaryData visualization · Categorical token refs · #1
Categorical Token Refs 1
--semantic-brand-accentData visualization · Categorical token refs · #2
Categorical Token Refs 2
--semantic-status-informativeData visualization · Categorical token refs · #3
Diverging Token Refs 0
--semantic-status-errorData visualization · Diverging token refs · #1
Diverging Token Refs 1
--semantic-status-successData visualization · Diverging token refs · #2
Enforceable
NoData visualization · Guidance · #1 · Enforceable
Id
data-viz-contrastData visualization · Guidance · #1 · Id
Text
Use semantic token references whose labels, strokes, and fills remain distinguishable without colour alone.Data visualization · Guidance · #1 · Text
Sequential Token Refs 0
--semantic-surface-3Data visualization · Sequential token refs · #1
Sequential Token Refs 1
--semantic-brand-primaryData visualization · Sequential token refs · #2
11

Motion

authored

Governed motion variance, timing, easing, and reduced-motion expectations.

7 resolved values
Easing
Ease SmoothProgress over time, arrive gently, never snap
Duration scale
Duration FastDuration Normal

Reduced-motion behavior is required.

Technical details7 canonical values and registry paths
Duration Token Refs 0
--brandOS-duration-fastMotion · Duration token refs · #1
Duration Token Refs 1
--brandOS-duration-normalMotion · Duration token refs · #2
Easing Token Refs 0
--brandOS-ease-smoothMotion · Easing token refs · #1
Enforceable
NoMotion · Guidance · #1 · Enforceable
Id
quiet-motionMotion · Guidance · #1 · Id
Text
Motion is quiet and editorial: reveals and state changes only, no looping decoration; prefers-reduced-motion shows a static layout.Motion · Guidance · #1 · Text
Reduced Motion Required
YesMotion · Reduced motion required
12

Prose guidance

authored

Human-readable direction distributed with the effective visual specification.

6 resolved values
Working principlesClear direction for consistent decisions
01
Write in Ben's first person, plainly and specifically: name the work, the place and the people; no hype, no growth-hacking vocabulary and no unverifiable numbers.
Human-readable guidance
02
Posts about investing, tax or estates are personal perspective, never financial, legal or tax advice.
Human-readable guidance
Technical details6 canonical values and registry paths
Enforceable
NoProse guidance · #1 · Enforceable
Id
first-person-plainProse guidance · #1 · Id
Text
Write in Ben's first person, plainly and specifically: name the work, the place and the people; no hype, no growth-hacking vocabulary and no unverifiable numbers.Prose guidance · #1 · Text
Enforceable
NoProse guidance · #2 · Enforceable
Id
no-adviceProse guidance · #2 · Id
Text
Posts about investing, tax or estates are personal perspective, never financial, legal or tax advice.Prose guidance · #2 · Text

04 · Accessibility

Verified accessible pairings

Live specimens rendered from canonical foreground and background tokens.

14 verified
Contrast5.09:1
AA text
Foreground--semantic-brand-accent-contentSurface--semantic-brand-accent
Standard text
AA passAAA fail
Large text
AA passAAA pass
Contrast12.34:1
AAA text
Foreground--semantic-brand-primary-contentSurface--semantic-brand-primary
Standard text
AA passAAA pass
Large text
AA passAAA pass
Contrast9.71:1
AAA text
Foreground--semantic-brand-secondary-contentSurface--semantic-brand-secondary
Standard text
AA passAAA pass
Large text
AA passAAA pass
Contrast16.03:1
AAA text
Foreground--semantic-neutral-contentSurface--semantic-neutral-base
Standard text
AA passAAA pass
Large text
AA passAAA pass
Contrast7.19:1
AAA text
Foreground--semantic-status-error-contentSurface--semantic-status-error
Standard text
AA passAAA pass
Large text
AA passAAA pass
Contrast7.34:1
AAA text
Foreground--semantic-status-informative-contentSurface--semantic-status-informative
Standard text
AA passAAA pass
Large text
AA passAAA pass
Contrast7.60:1
AAA text
Foreground--semantic-status-success-contentSurface--semantic-status-success
Standard text
AA passAAA pass
Large text
AA passAAA pass
Contrast7.24:1
AAA text
Foreground--semantic-status-warning-contentSurface--semantic-status-warning
Standard text
AA passAAA pass
Large text
AA passAAA pass
Contrast7.76:1
AAA text
Foreground--semantic-content-mutedSurface--semantic-surface-1
Standard text
AA passAAA pass
Large text
AA passAAA pass
Contrast16.03:1
AAA text
Foreground--semantic-content-primarySurface--semantic-surface-1
Standard text
AA passAAA pass
Large text
AA passAAA pass
Contrast7.04:1
AAA text
Foreground--semantic-content-mutedSurface--semantic-surface-2
Standard text
AA passAAA pass
Large text
AA passAAA pass
Contrast14.22:1
AAA text
Foreground--semantic-content-primarySurface--semantic-surface-2
Standard text
AA passAAA pass
Large text
AA passAAA pass
Contrast5.91:1
AA text
Foreground--semantic-content-mutedSurface--semantic-surface-3
Standard text
AA passAAA fail
Large text
AA passAAA pass
Contrast11.95:1
AAA text
Foreground--semantic-content-primarySurface--semantic-surface-3
Standard text
AA passAAA pass
Large text
AA passAAA pass

05 · Example uses

Where Ben Snyder shows up

Real interface patterns shaped by the same identity, semantic tokens and typography defined in this profile.

03Application
surfaces
02
Light mode surface

Essays and speaking bio

Brand ready
03
Dark mode surface

Personal correspondence and cards

Brand ready

06 · Delivery

Drop in anywhere

Three lines and an attribute, the whole Ben Snyder brand renders from CDN.

  1. 01
    LoadGlobal tokens
  2. 02
    ThemeBen Snyder
  3. 03
    RenderEvery component
index.htmlComplete CDN setupHTMLVersion pinned
<link rel="stylesheet" href="https://brand.snyder.tech/cdn/0.44.6/themes/global-tokens.css" />
<link rel="stylesheet" href="https://brand.snyder.tech/cdn/0.44.6/themes/benpsnyder-brand.css" />
<script type="module" src="https://brand.snyder.tech/cdn/0.44.6/index.js"></script>
<html data-brand="benpsnyder" data-theme="light">
Registered assets

4 immutable assets

Pinned artwork for stable delivery. Themeable -ink follows the active theme, while -light and -dark variants preserve exported colour.

Release
v0.44.6
Integrity
4/4
Payload
21 KB
  • 01 · Faviconbenpsnyder.svgsingle artwork801 BVerified
  • 02 · Logobenpsnyder-logo-dark.svgdark artwork6.6 KBVerified
  • 03 · Logobenpsnyder-logo-ink.svgink artwork6.6 KBVerified
  • 04 · Logobenpsnyder-logo-light.svglight artwork6.6 KBVerified
brand-mark.inkRecommended themeable markTypeScriptVersion pinned
// Recommended, themeable: currentColor follows the theme when inlined
import BenSnyderMark from '@brandos/ui/assets/brand-logos/benpsnyder-logo-ink.svg?raw';
// Astro: <span set:html={Mark} />   ·   React (SVGR): import ...?react
Implementation libraryAlternative asset recipesImage, background and favicon patterns3 recipes
logo.htmlFixed artwork imageHTMLVersion pinned
<img
  src="https://brand.snyder.tech/cdn/0.44.6/assets/brand-logos/benpsnyder-logo-dark.svg"
  alt="Ben Snyder"
  loading="lazy"
  decoding="async"
/>
mark.cssCSS background recipeCSSVersion pinned
.benpsnyder-mark {
  background-image: url("https://brand.snyder.tech/cdn/0.44.6/assets/brand-logos/benpsnyder-logo-dark.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
favicon.htmlBrowser favicon setupHTMLVersion pinned
<link rel="icon" type="image/svg+xml" href="https://brand.snyder.tech/cdn/0.44.6/assets/brand-favicons/benpsnyder.svg" />
Registry evidenceVersioned asset manifestPaths, sizes and integrity hashesSHA-256
benpsnyder-cdn-manifest.txtVersioned asset inventoryManifestVersion pinned
# favicon · 801 B
# sha256:6b1a4bb1414193cc4fc4cfbab229128005017d60e0ea7e5223d1f51f1664289c
https://brand.snyder.tech/cdn/0.44.6/assets/brand-favicons/benpsnyder.svg

# logo · 6.6 KB
# sha256:9c9ce4beaee140b8066a36da617fa26494fcd7f94b104bc15805c315c9e2d3c8
https://brand.snyder.tech/cdn/0.44.6/assets/brand-logos/benpsnyder-logo-dark.svg

# logo · 6.6 KB
# sha256:8b5c5aae6872b7ed24282ca906e117a2ae5bd83e629456f9733b9e7c45b0acb3
https://brand.snyder.tech/cdn/0.44.6/assets/brand-logos/benpsnyder-logo-ink.svg

# logo · 6.6 KB
# sha256:f1eb5e9a4e7b515da68162d7a6691b1cf6bfe195a833ac167376aa1098f0b487
https://brand.snyder.tech/cdn/0.44.6/assets/brand-logos/benpsnyder-logo-light.svg
Machine-readable manifest.json, all brands in this version