Skip to content

trabian/uxscii

Repository files navigation

UXSCII

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.


What It Is

UXSCII defines a simple two-file system:

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

This format is:

  • 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

Quick Example

button.uxm:

{
  "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:

# Primary Button

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

Specification

The complete specification is available at:

📖 SPECIFICATION.md

Or online at: uxscii.org/spec

The specification defines:

  • File format standards (.uxm and .md)
  • JSON schema and validation rules
  • Variable interpolation syntax
  • Versioning and extension points
  • Conformance requirements

Examples

Browse example components in the /examples directory:


Reference Implementation

A CLI validator and tooling is available in /reference-cli:

# Install
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

Note: The CLI is optional. UXSCII is a specification - you can build your own tools that read and write this format.


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.


Why UXSCII Exists

Existing design formats (Figma, Sketch, Adobe XD) are:

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

UXSCII is:

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

Schema

The JSON Schema for UXM files is available at:

https://uxscii.org/schema/v1.0.0.json

Use it to validate UXM files in your tools.


Contributing

We welcome contributions to:

  • Specification - Propose improvements via GitHub Discussions
  • Examples - Submit example components via pull requests
  • Documentation - Improve guides and tutorials
  • Tools - Build implementations and share them

For specification changes, please open an RFC (Request for Comments) in Discussions.

See CONTRIBUTING.md for guidelines.


Community


License

MIT License - see LICENSE for details.

The specification is open and free to implement.


Roadmap

v1.0 (Current)

  • Core specification
  • JSON schema
  • Reference CLI implementation
  • Example component library

v1.1 (Planned)

  • Enhanced animation specifications
  • Responsive design patterns
  • Component composition standards
  • Extended accessibility features

v2.0 (Future)

  • Advanced interactivity models
  • Runtime behavior specifications
  • Component testing standards

See ROADMAP.md for details.


Related Projects

  • Fluxwing - AI agents that design with UXSCII (coming soon)
  • More tools and integrations as the ecosystem grows

Building the future of AI-native design

Read the SpecBrowse ExamplesJoin Discussions


A product by
Trabian

About

uxscii

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published