net.wireservice.stylesheet
{
"$type": "com.atproto.lexicon.schema",
"defs": {
"colorScheme": {
"description": "A set of color roles for a single color scheme (light or dark). Background, foreground, accent, and accentForeground are required and parallel site.standard.theme.basic; the remaining roles add richer vocabulary for editorial layouts.",
"properties": {
"accent": {
"description": "Color for links and interactive elements.",
"refs": [
"site.standard.theme.color#rgb"
],
"type": "union"
},
"accentForeground": {
"description": "Text color on accent backgrounds.",
"refs": [
"site.standard.theme.color#rgb"
],
"type": "union"
},
"background": {
"description": "Primary background color.",
"refs": [
"site.standard.theme.color#rgb"
],
"type": "union"
},
"border": {
"description": "Color for borders and dividers.",
"refs": [
"site.standard.theme.color#rgb"
],
"type": "union"
},
"foreground": {
"description": "Primary text color.",
"refs": [
"site.standard.theme.color#rgb"
],
"type": "union"
},
"muted": {
"description": "Background color for muted/secondary areas.",
"refs": [
"site.standard.theme.color#rgb"
],
"type": "union"
},
"mutedForeground": {
"description": "Text color for captions, bylines, and secondary content.",
"refs": [
"site.standard.theme.color#rgb"
],
"type": "union"
},
"surface": {
"description": "Background color for cards and container surfaces.",
"refs": [
"site.standard.theme.color#rgb"
],
"type": "union"
}
},
"required": [
"background",
"foreground",
"accent",
"accentForeground"
],
"type": "object"
},
"fontSpec": {
"description": "A font specification with family, weight, and style.",
"properties": {
"family": {
"description": "Font family name (e.g., 'Georgia', 'Helvetica Neue').",
"maxLength": 256,
"type": "string"
},
"style": {
"knownValues": [
"normal",
"italic"
],
"maxLength": 64,
"type": "string"
},
"weight": {
"description": "Font weight (100-900).",
"maximum": 900,
"minimum": 100,
"type": "integer"
}
},
"required": [
"family"
],
"type": "object"
},
"main": {
"description": "A publication-level stylesheet record providing default named layouts, styles, and text styles, plus typography and color palette defaults. Documents reference a stylesheet by AT URI to inherit its named entries. Document-level entries with the same name override the stylesheet's entry wholesale (including its conditional overrides).",
"key": "tid",
"record": {
"properties": {
"componentLayouts": {
"description": "Named layout definitions inherited by documents that reference this stylesheet.",
"items": {
"ref": "net.wireservice.content#namedComponentLayout",
"type": "ref"
},
"type": "array"
},
"componentStyles": {
"description": "Named style definitions inherited by documents that reference this stylesheet.",
"items": {
"ref": "net.wireservice.content#namedComponentStyle",
"type": "ref"
},
"type": "array"
},
"componentTextStyles": {
"description": "Named text style definitions inherited by documents that reference this stylesheet.",
"items": {
"ref": "net.wireservice.content#namedTextStyle",
"type": "ref"
},
"type": "array"
},
"description": {
"description": "Optional human-readable description of the stylesheet (e.g., 'Longform features', 'Daily news').",
"maxGraphemes": 500,
"maxLength": 5000,
"type": "string"
},
"layout": {
"description": "Default document grid for documents that don't define their own. The document-level layout overrides this if both are present.",
"ref": "net.wireservice.content#documentLayout",
"type": "ref"
},
"palette": {
"description": "Color palette with light and (optionally) dark color schemes. Renderers use these for fallback colors in components that don't set explicit colors via componentStyles or componentTextStyles. Complements site.standard.theme.basic, which is the ecosystem-shared four-color brand palette and remains on the publication record.",
"ref": "#palette",
"type": "ref"
},
"typography": {
"description": "Typography defaults: bodies, headings, captions, type scale. Renderers fall back to these for text components that don't reference an explicit textStyle, and for fields a textStyle leaves unset.",
"ref": "#typography",
"type": "ref"
}
},
"type": "object"
},
"type": "record"
},
"palette": {
"description": "Color palette with light and optionally dark schemes.",
"properties": {
"dark": {
"description": "Color scheme for dark mode. When omitted, renderers may derive a dark scheme or fall back to the light scheme.",
"ref": "#colorScheme",
"type": "ref"
},
"light": {
"description": "Color scheme for light mode.",
"ref": "#colorScheme",
"type": "ref"
}
},
"required": [
"light"
],
"type": "object"
},
"typography": {
"description": "Typography defaults for the publication.",
"properties": {
"bodyFont": {
"description": "Default font for body text.",
"ref": "#fontSpec",
"type": "ref"
},
"bodyFontSize": {
"description": "Default body font size in points.",
"maximum": 72,
"minimum": 8,
"type": "integer"
},
"bodyLineHeight": {
"description": "Default body line height in points.",
"maximum": 120,
"minimum": 8,
"type": "integer"
},
"captionFont": {
"description": "Default font for captions and secondary text.",
"ref": "#fontSpec",
"type": "ref"
},
"headingFont": {
"description": "Default font for headings.",
"ref": "#fontSpec",
"type": "ref"
},
"headingScale": {
"description": "Type scale ratio for heading sizes relative to body.",
"knownValues": [
"minor-third",
"major-third",
"perfect-fourth",
"golden-ratio"
],
"maxLength": 64,
"type": "string"
}
},
"type": "object"
}
},
"id": "net.wireservice.stylesheet",
"lexicon": 1
}
Metadata
- DID
-
did:plc:lktj64hp7lc3fzuf6iyy7lwj - CID
-
bafyreigfwejcxvbygsp5jijwfqzyyngge52lxykvkm7mdtlna2ua2vsj44 - Indexed At
- 2026-10-12 21:12 UTC
- AT-URI
-
at://did:plc:lktj64hp7lc3fzuf6iyy7lwj/com.atproto.lexicon.schema/net.wireservice.stylesheet
Version History (2 versions)
Referenced Schemas (5)
Similar Lexicons
Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.
-
Standard Reader typography for a collections publication. Uses the same record key as the publication. Colors remain on the publication's site.standard.theme.basic record.
-
The three Mise en Mode priorities for `action`, counting down from the thing a screen most wants you to do to the thing it least insists on.
-
site.standard.theme.basic record
A simplified theme definition for publications, providing basic color customization for content display across different platforms and applications.
-
app.offprint.theme object
-
place.mode.standard.theme record
A self-contained theme: a mapping of CSS values to Mise en Mode intent tokens, grouped by aspect. The record key is the expression the theme serves (e.g. 'dark', 'com.homedepot.easter', 'default').