Skip to content

介绍 ​

PRTS Design(明日方舟网页设计系统)是 prts.wiki(MediaWiki 1.43)新皮肤 Arknights(Skin:Arknights)的设计系统。视觉母体是明日方舟官网与游戏内 UI(torappu 解包),不是一层换色的通用后台。

叫法:设计系统(本仓库:令牌、CSS、Vue、文档)叫 PRTS Design;加载它的 MediaWiki 皮肤叫 Arknights。npm 包是 @mooncellwiki/prts-design-*。类名前缀 ak-、令牌前缀 --ak- 不变;本仓库皮肤骨架 skin/ 的扩展名 AKDS、模块名 skins.akds.* 等是早期的代码标识,没有改名(与生产皮肤的名字对照见在 MediaWiki 中使用)。

三层,和 Primer 一样分开 ​

GitHub 的 Primer 把设计系统拆成令牌(primer/primitives)、CSS(primer/css)、框架实现(primer/react、primer/view_components)和文档站几块。PRTS Design 按同样的思路组织,只是放在一个仓库里:

层目录对应 Primer谁在用
令牌packages/tokens/(@mooncellwiki/prts-design-tokens,带 tokens.css)→ tokens.cssprimer/primitives所有人;TemplateStyles 里直接 var(--ak-accent)
CSS 实现packages/css/(每个组件一份样式表;由皮肤加载,组件部分另发 npm @mooncellwiki/prts-design-css,不含字体与素材)primer/cssMediaWiki 皮肤;模板 / Lua 输出 .ak-* 结构;别的皮肤 / 站外的 widget;纯 HTML 页面(单文件版,见在纯 HTML 中使用)
Vue 实现packages/vue/(@mooncellwiki/prts-design-vue)primer/reactprts-widgets 等 Vue 小部件
文档站site/(本站)primer.style所有人
Storybook.storybook/ + *.stories.tsprimer.style/react/storybook组件开发 / 视觉走查

CSS 是唯一的样式实现。 Vue 组件只负责输出同样的结构、管理状态与可访问性,不带自己的样式;组件文档里每个示例的「HTML」页签,就是 Vue 组件实际渲染出的结构——模板照着输出,外观一模一样。

按 MediaWiki 皮肤的需要分层 ​

PRTS Design 是皮肤而不是 JS 组件库:组件 = 一段约定好的 HTML 结构 + 类名,模板作者(Lua / wikitext)输出这段结构,皮肤保证外观与主题。样式按层组织,加载顺序也按层(见模块与层序):

层管什么源文件(packages/css/src/)文档
L0 令牌颜色 / 字体 / 尺寸 / 动效 / 层级,明暗主题(含局部主题),Codex 桥接;作用域根(排版基线)tokens.css · bridge-codex.css(生成物,源在 packages/tokens/src/)· scope.css基础 · 作用域
L1 MediaWiki 内容wikitext 产物与核心 UI 的样式——编辑不需要知道设计系统存在base/MediaWiki 内容样式
L2 皮肤骨架黑色页眉 / 头图 / 侧栏 / 页面头 / 目录 / 页脚 / 搜索面板 / 响应式chrome/皮肤骨架
L3 通用组件纯 CSS 组件,可写进模板 / TemplateStylescomponents/通用组件
L4 方舟装饰语言 + 游戏数据组件decor/ + arknights/装饰语言 · 方舟组件
L5 页面模式干员页 / 首页 / 列表页 …preview/ 样例页页面模式

实现状态 ​

每个组件的页头都列出两种实现各自的状态(参考 Primer 的组件生命周期):

状态含义
可用已在整页样例 / 皮肤里跑过,结构与类名稳定,改动会同步文档
实验新写的,API 可能还会变;可以试用,发现问题请提 issue
弃用将被移除,文档会写明替代品
规划在清单里,还没有实现

目前 CSS 实现多为「可用」(v0.1,皮肤尚未上线),Vue 实现全部是「实验」。

三句话看懂这套系统 ​

  1. 黑白为体、青为用:大面积黑 / 白 / 灰;青 #18D1FF(官网,暗色主题)/ #0098DC(游戏内,亮色主题)只做选中、链接、主动作与强调条;黄 #FFD800 为次强调;红只表示危险 / NEW。
  2. 直角、斜纹、半调网点、角标三角、黑白反转、大写拉丁装饰字、白色线稿图标——方舟本体的形状语言:不做圆角,不做辉光,也没有切角 / 斜切 / 斜带。
  3. 终端 / 档案双主题是双正典(游戏本身就是双色 UI),走 MediaWiki 1.43 的 skin-theme-clientpref-* 机制,并把 Codex 令牌桥接到 --ak-*,核心 / 扩展 UI 自动跟随。

文本 CC BY-NC-SA 4.0 · 游戏素材版权归鹰角网络所有