A markup language for AI-native UI component definitions

UXSCII (pronounced "you-ex-ski") is an open specification for representing UI components in a text-based format optimized for both human readability and AI agent consumption.

Why UXSCII?

🤖

AI-Native

Designed from the ground up for machine parsing and generation by AI agents

📝

Human-Readable

ASCII representations anyone can understand without special tools

📂

Version Control Friendly

Text-based format with meaningful diffs, perfect for git

🔓

Tool Independent

Open specification, not tied to specific software or vendors

🔧

Extensible

Clear extension points for custom types and behaviors

♿

Accessible

ASCII representation readable by screen readers

Quick Example

A UXSCII component consists of two files:

button.uxm JSON Metadata

{
  "id": "primary-button",
  "type": "button",
  "version": "1.0.0",
  "metadata": {
    "name": "Primary Button",
    "created": "2024-01-01T00:00:00Z",
    "modified": "2024-01-01T00:00:00Z"
  },
  "props": {
    "text": "Click Me"
  },
  "ascii": {
    "templateFile": "button.md",
    "width": 16,
    "height": 3
  }
}

button.md ASCII Template

# Primary Button

```
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓   {{text}}   ▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
```

What It Is

The Two-File System

  • .uxm files - JSON metadata defining component structure, behavior, and properties
  • .md files - ASCII visual templates showing how components look

Key Characteristics

  • Text-based - Works with git, readable in any editor
  • AI-native - Designed for machine parsing and generation
  • Tool-independent - Open specification, not tied to specific software
  • Human-readable - ASCII representations anyone can understand

Who It's For

🤖 AI Agent Builders

Build design tools without reinventing format parsing. UXSCII provides a standard format AI agents can read and generate.

🛠️ Tool Developers

Implement UXSCII support in your design tools, build systems, or component libraries. Think of it like supporting Markdown or JSON.

🎨 Design Systems Teams

Define components in a tool-independent format. Version control your designs. Work across any platform.

Getting Started

Installation

# Install the reference CLI
npm install -g uxscii

# Validate a component
uxscii validate button.uxm

# Validate a template
uxscii template button.md

# Get component with template
uxscii uxm get button

Why UXSCII Exists

Existing Design Formats

  • ❌ Proprietary and closed
  • ❌ Binary formats (poor version control)
  • ❌ Tool-locked
  • ❌ Not designed for AI consumption

UXSCII

  • ✅ Open specification (MIT License)
  • ✅ Text-based (git-friendly, meaningful diffs)
  • ✅ Tool-independent
  • ✅ Built for AI agents from day one