org.designtxt.defs

bomberstudios.com

Documentation

borderValue object

A composite border value combining width, line style, and color.

Properties

style string Optional

Border line style.

maxLength: 8 bytes
Known values: solid, dashed, dotted, double, groove, ridge, inset, outset, none
View raw schema
{
  "type": "object",
  "properties": {
    "color": {
      "ref": "#colorValue",
      "type": "ref",
      "description": "Border color."
    },
    "style": {
      "type": "string",
      "maxLength": 8,
      "description": "Border line style.",
      "knownValues": [
        "solid",
        "dashed",
        "dotted",
        "double",
        "groove",
        "ridge",
        "inset",
        "outset",
        "none"
      ]
    },
    "width": {
      "ref": "#dimensionValue",
      "type": "ref",
      "description": "Border width."
    }
  },
  "description": "A composite border value combining width, line style, and color."
}
colorStop object

A single gradient color stop. Position is a string-encoded float.

Properties

position string Optional

Stop position as a string-encoded float (0-1 for proportional, or unitless percentage like '50').

maxLength: 64 bytes
View raw schema
{
  "type": "object",
  "properties": {
    "color": {
      "ref": "#colorValue",
      "type": "ref",
      "description": "Color at this stop."
    },
    "position": {
      "type": "string",
      "maxLength": 64,
      "description": "Stop position as a string-encoded float (0-1 for proportional, or unitless percentage like '50')."
    }
  },
  "description": "A single gradient color stop. Position is a string-encoded float."
}
colorValue object

A color value expressed in a specific color space with optional alpha and hex fallback. Float components are stored as strings because the atproto data model does not support floating-point numbers.

Properties

alpha string Optional

Opacity as a string-encoded float between '0' and '1'. Assumed '1' if omitted.

maxLength: 64 bytes
colorSpace string Required

The color space identifier.

maxLength: 16 bytes
Known values: srgb, srgb-linear, hsl, hwb, lab, lch, oklab, oklch, display-p3, a98-rgb, prophoto-rgb, rec2020, xyz-d65, xyz-d50
components array of string Required

Color component values (positional, depending on colorSpace). Each element is a string-encoded float (e.g. '0.4', '1.0') or the string 'none'.

hex string Optional

6-digit CSS hex fallback (e.g. #ff00ff).

maxLength: 7 bytesmaxGraphemes: 7 graphemes
View raw schema
{
  "type": "object",
  "required": [
    "colorSpace",
    "components"
  ],
  "properties": {
    "hex": {
      "type": "string",
      "maxLength": 7,
      "description": "6-digit CSS hex fallback (e.g. #ff00ff).",
      "maxGraphemes": 7
    },
    "alpha": {
      "type": "string",
      "maxLength": 64,
      "description": "Opacity as a string-encoded float between '0' and '1'. Assumed '1' if omitted."
    },
    "colorSpace": {
      "type": "string",
      "maxLength": 16,
      "description": "The color space identifier.",
      "knownValues": [
        "srgb",
        "srgb-linear",
        "hsl",
        "hwb",
        "lab",
        "lch",
        "oklab",
        "oklch",
        "display-p3",
        "a98-rgb",
        "prophoto-rgb",
        "rec2020",
        "xyz-d65",
        "xyz-d50"
      ]
    },
    "components": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 64
      },
      "description": "Color component values (positional, depending on colorSpace). Each element is a string-encoded float (e.g. '0.4', '1.0') or the string 'none'."
    }
  },
  "description": "A color value expressed in a specific color space with optional alpha and hex fallback. Float components are stored as strings because the atproto data model does not support floating-point numbers."
}
cubicBezierValue array

A cubic Bezier curve defined by exactly 4 control-point string-encoded floats (x1, y1, x2, y2).

View raw schema
{
  "type": "array",
  "items": {
    "type": "string",
    "maxLength": 64
  },
  "maxItems": 4,
  "minItems": 4,
  "description": "A cubic Bezier curve defined by exactly 4 control-point string-encoded floats (x1, y1, x2, y2)."
}
dimensionValue object

A dimension with a numeric value and CSS-compatible unit. The value is a string-encoded float because atproto does not support floating-point numbers.

Properties

unit string Required

The unit of measurement.

maxLength: 8 bytes
Known values: px, rem, em, pt, pc, in, cm, mm, %, vw, vh, vmin, vmax, ch, ex
value string Required

The numeric magnitude as a string-encoded float (e.g. '16.5', '100', '0.25').

maxLength: 64 bytes
View raw schema
{
  "type": "object",
  "required": [
    "value",
    "unit"
  ],
  "properties": {
    "unit": {
      "type": "string",
      "maxLength": 8,
      "description": "The unit of measurement.",
      "knownValues": [
        "px",
        "rem",
        "em",
        "pt",
        "pc",
        "in",
        "cm",
        "mm",
        "%",
        "vw",
        "vh",
        "vmin",
        "vmax",
        "ch",
        "ex"
      ]
    },
    "value": {
      "type": "string",
      "maxLength": 64,
      "description": "The numeric magnitude as a string-encoded float (e.g. '16.5', '100', '0.25')."
    }
  },
  "description": "A dimension with a numeric value and CSS-compatible unit. The value is a string-encoded float because atproto does not support floating-point numbers."
}
durationValue object

A duration with a numeric value and time unit. The value is a string-encoded float because atproto does not support floating-point numbers.

Properties

unit string Required

The time unit.

maxLength: 4 bytes
Known values: ms, s
value string Required

The numeric magnitude as a string-encoded float (e.g. '150', '300.5').

maxLength: 64 bytes
View raw schema
{
  "type": "object",
  "required": [
    "value",
    "unit"
  ],
  "properties": {
    "unit": {
      "type": "string",
      "maxLength": 4,
      "description": "The time unit.",
      "knownValues": [
        "ms",
        "s"
      ]
    },
    "value": {
      "type": "string",
      "maxLength": 64,
      "description": "The numeric magnitude as a string-encoded float (e.g. '150', '300.5')."
    }
  },
  "description": "A duration with a numeric value and time unit. The value is a string-encoded float because atproto does not support floating-point numbers."
}
fontFamilyValue string

A font family name or comma-separated fallback string.

ConstraintsmaxLength: 512 bytes
View raw schema
{
  "type": "string",
  "maxLength": 512,
  "description": "A font family name or comma-separated fallback string."
}
fontWeightKeyword string

No description available.

ConstraintsmaxLength: 16 bytes
Known Values (other values may be valid)
thin hairline extraLight ultraLight light normal regular book medium semiBold demiBold bold extraBold ultraBold black heavy extraBlack ultraBlack
View raw schema
{
  "type": "string",
  "maxLength": 16,
  "knownValues": [
    "thin",
    "hairline",
    "extraLight",
    "ultraLight",
    "light",
    "normal",
    "regular",
    "book",
    "medium",
    "semiBold",
    "demiBold",
    "bold",
    "extraBold",
    "ultraBold",
    "black",
    "heavy",
    "extraBlack",
    "ultraBlack"
  ]
}
fontWeightNumber integer

No description available.

Constraintsminimum: 1, maximum: 1000
View raw schema
{
  "type": "integer",
  "maximum": 1000,
  "minimum": 1
}
gradientValue object

A composite gradient value with type and color stops.

Properties

angles array of string Optional

Angle values in degrees as string-encoded floats.

colorStops array of ref#colorStop Optional

Color stops defining the gradient.

type string Optional

Gradient type.

maxLength: 8 bytes
Known values: linear, radial, conic
View raw schema
{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "maxLength": 8,
      "description": "Gradient type.",
      "knownValues": [
        "linear",
        "radial",
        "conic"
      ]
    },
    "angles": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 64
      },
      "description": "Angle values in degrees as string-encoded floats."
    },
    "colorStops": {
      "type": "array",
      "items": {
        "ref": "#colorStop",
        "type": "ref"
      },
      "description": "Color stops defining the gradient."
    }
  },
  "description": "A composite gradient value with type and color stops."
}
numberValue string

A numeric value encoded as a string (e.g. '42', '3.14159'). Encoded as string because atproto does not support floating-point numbers and cannot distinguish integer from float at the type level.

ConstraintsmaxLength: 128 bytes
View raw schema
{
  "type": "string",
  "maxLength": 128,
  "description": "A numeric value encoded as a string (e.g. '42', '3.14159'). Encoded as string because atproto does not support floating-point numbers and cannot distinguish integer from float at the type level."
}
shadowValue object

A composite shadow value (drop shadow / box-shadow) with color, offsets, blur, spread.

Properties

inset boolean Optional

Whether the shadow is inset (inner shadow).

View raw schema
{
  "type": "object",
  "properties": {
    "blur": {
      "ref": "#dimensionValue",
      "type": "ref",
      "description": "Blur radius."
    },
    "color": {
      "ref": "#colorValue",
      "type": "ref",
      "description": "Shadow color."
    },
    "inset": {
      "type": "boolean",
      "description": "Whether the shadow is inset (inner shadow)."
    },
    "spread": {
      "ref": "#dimensionValue",
      "type": "ref",
      "description": "Spread radius."
    },
    "offsetX": {
      "ref": "#dimensionValue",
      "type": "ref",
      "description": "Horizontal offset."
    },
    "offsetY": {
      "ref": "#dimensionValue",
      "type": "ref",
      "description": "Vertical offset."
    }
  },
  "description": "A composite shadow value (drop shadow / box-shadow) with color, offsets, blur, spread."
}
strokeStyleValue object

Stroke style properties (dash array, line cap/join, miter limit). Corresponds to DTCG 'strokeStyle' composite type. Dash lengths and miter limit are string-encoded floats.

Properties

dashArray array of string Optional

Dash and gap lengths as string-encoded floats.

lineCap string Optional

Shape at the end of open subpaths.

maxLength: 8 bytes
Known values: round, butt, square
lineJoin string Optional

Shape at the corners of paths.

maxLength: 8 bytes
Known values: miter, bevel, round
miterLimit string Optional

Maximum miter length when lineJoin is 'miter', as a string-encoded float.

maxLength: 64 bytes
View raw schema
{
  "type": "object",
  "properties": {
    "lineCap": {
      "type": "string",
      "maxLength": 8,
      "description": "Shape at the end of open subpaths.",
      "knownValues": [
        "round",
        "butt",
        "square"
      ]
    },
    "lineJoin": {
      "type": "string",
      "maxLength": 8,
      "description": "Shape at the corners of paths.",
      "knownValues": [
        "miter",
        "bevel",
        "round"
      ]
    },
    "dashArray": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 64
      },
      "description": "Dash and gap lengths as string-encoded floats."
    },
    "miterLimit": {
      "type": "string",
      "maxLength": 64,
      "description": "Maximum miter length when lineJoin is 'miter', as a string-encoded float."
    }
  },
  "description": "Stroke style properties (dash array, line cap/join, miter limit). Corresponds to DTCG 'strokeStyle' composite type. Dash lengths and miter limit are string-encoded floats."
}
transitionValue object

A composite transition value with duration, delay, and timing function.

Properties

timingFunction ref #cubicBezierValue Optional

Timing function as a cubic Bezier curve.

View raw schema
{
  "type": "object",
  "properties": {
    "delay": {
      "ref": "#durationValue",
      "type": "ref",
      "description": "Transition delay."
    },
    "duration": {
      "ref": "#durationValue",
      "type": "ref",
      "description": "Transition duration."
    },
    "timingFunction": {
      "ref": "#cubicBezierValue",
      "type": "ref",
      "description": "Timing function as a cubic Bezier curve."
    }
  },
  "description": "A composite transition value with duration, delay, and timing function."
}
typographyValue object

A composite typography value aggregating font family, weight, size, line metrics, and text transforms. Numeric values are string-encoded floats to accommodate the atproto data model.

Properties

fontFamily array of string Optional

Ordered list of font family names (primary and fallbacks).

lineHeight string Optional

Line height as a string-encoded unitless multiplier (e.g. '1.5', '1.2').

maxLength: 64 bytes
textCase string Optional

Text case transformation.

maxLength: 12 bytes
Known values: uppercase, lowercase, capitalize, none
textDecoration string Optional

Text decoration.

maxLength: 12 bytes
Known values: underline, overline, line-through, none
View raw schema
{
  "type": "object",
  "properties": {
    "fontSize": {
      "ref": "#dimensionValue",
      "type": "ref",
      "description": "Font size."
    },
    "textCase": {
      "type": "string",
      "maxLength": 12,
      "description": "Text case transformation.",
      "knownValues": [
        "uppercase",
        "lowercase",
        "capitalize",
        "none"
      ]
    },
    "fontFamily": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 256
      },
      "description": "Ordered list of font family names (primary and fallbacks)."
    },
    "fontWeight": {
      "refs": [
        "#fontWeightKeyword",
        "#fontWeightNumber"
      ],
      "type": "union",
      "description": "Font weight."
    },
    "lineHeight": {
      "type": "string",
      "maxLength": 64,
      "description": "Line height as a string-encoded unitless multiplier (e.g. '1.5', '1.2')."
    },
    "letterSpacing": {
      "ref": "#dimensionValue",
      "type": "ref",
      "description": "Letter spacing."
    },
    "textDecoration": {
      "type": "string",
      "maxLength": 12,
      "description": "Text decoration.",
      "knownValues": [
        "underline",
        "overline",
        "line-through",
        "none"
      ]
    },
    "paragraphIndent": {
      "ref": "#dimensionValue",
      "type": "ref",
      "description": "Paragraph indent."
    },
    "paragraphSpacing": {
      "ref": "#dimensionValue",
      "type": "ref",
      "description": "Paragraph spacing."
    }
  },
  "description": "A composite typography value aggregating font family, weight, size, line metrics, and text transforms. Numeric values are string-encoded floats to accommodate the atproto data model."
}

Lexicon Garden

@