Solarwire:写给AI看的线框图语言,让原型设计像写Markdown一样简单

1 阅读3分钟

Solarwire:写给AI看的线框图语言,让原型设计像写Markdown一样简单

用文本定义UI,让AI替你画图,还能Git版本控制

SolarWire-LOGO.png

项目起源

去年底,我在用AI生成产品原型时遇到了一个痛点:让AI帮我画登录页面,它确实生成了代码,但要么是React组件,要么是SVG图片——前者不能直接预览,后者无法修改。我想让AI生成一个“中间格式”:人类可读写、AI能理解、还能直接渲染成图。

于是,Solarwire 诞生了。

什么是 Solarwire?

Solarwire 是一种基于 Markdown 风格的轻量级 DSL,专门用于描述 UI 线框图。它的设计目标很简单:对人类友好,对 AI 友好,纯文本可版本控制

("登录卡片") @(50,30) w=350
  {col} gap=12
    {row} gap=8 align=C
      <logo.png> w=32
      "欢迎" size=20 bold
    ["用户名"] w=100%
    ["密码"] w=100%
    {row} gap=8 align=C
      ["登录"] primary
      ["注册"] @(R+5,0)
    --"分隔线"-- @(L, B+10)->(R-10, B+10) w=1 c=gray

为什么需要 Solarwire?

现有的工具各有痛点:

工具痛点
Figma/墨刀图形界面操作繁琐,无法Git管理,AI无法直接生成
draw.io XML机器可读但人类不可读,冗长复杂
Mermaid专注流程图,缺乏UI线框图专用元素
AI直接生成代码要么是图片无法修改,要么是React代码需要手动调整

Solarwire 填补了这个空白:它是AI生成的理想目标格式,让AI专注于布局和组件描述,再由工具链转换为可预览的图形或可开发的代码。

语法速览:真的像 Markdown 一样简单

基础元素

符号含义示例
[]矩形["登录"]
()圆角矩形("卡片")
(())圆形((头像))
"text"纯文字"用户名"
!icon图标!icon "home"
<url>图片<logo.png> w=32
{row}/{col}容器{row} gap=8
##/#表格## border=1
--线段--"连线"-- @(10,10)->(100,20)

坐标系统(灵活但直观)

["绝对坐标"] @(100,50)
["边缘对齐"] @(R+10, T+5)       // 右边缘向右10,上边缘向下5

多行文本

"""
这是第一行
这是第二行
这是第三行
""" w=200 line-height=22

文档级声明(减少重复)

!device=phone
!c=#333
!size=12
!gap=12
!icon-library="material-icons"

为什么对 AI 友好?

Solarwire 的语法设计有意识地贴近自然语言:

  • 元素符号直观:[] 是矩形,() 是圆角矩形
  • 坐标表达自然:@(0,+30) 就是“往下30像素”
  • 属性简单:w=100 宽度100,bold 就是加粗

这意味着你可以在 ChatGPT 中直接说:

“帮我画一个购物车页面,包含商品列表、总价和结算按钮”

然后 AI 可以输出:

("购物车") w=375
  {col} gap=12
    {row} gap=8
      <product1.jpg> w=60
      {col}
        "商品名称"
        "¥99.00"
    {row} gap=8
      <product2.jpg> w=60
      {col}
        "另一件商品"
        "¥129.00"
    --"分割线"--
    {row} align=space-between
      "总计:"
      "¥228.00" bold
    ["结算"] primary w=100%

配合 MCP Server,AI 可以直接返回可预览的线框图。

开源与社区

Solarwire 采用 MIT 许可证,所有代码开源在 GitHub:

  • 📦 主仓库:github.com/solarwire/solarwire

无论你是想 Star 支持、提 Issue 反馈,还是直接参与代码贡献,都欢迎!

结语

Solarwire 的愿景是成为 AI 时代的“Markdown for UI”——让界面设计回归文本,让 AI 成为真正的设计助手,让版本控制融入原型流程。

如果你也对这个方向感兴趣,欢迎来 GitHub 点个 Star,或者提个 Issue 聊聊你的想法。

传送门github.com/solarwire/solarwire


本文同步发布于掘金,欢迎点赞评论转发。