@adea-ai/主题
Adea主题目录. 三十四个主题——每个主题都是OKLCH主题 完整的语义表面角色集,十六个ANSI颜色,一个光标和一个选择—— 包括第一党Adea调色板和成熟的上游调色板 同样的适配器.
bun add @adea-ai/themes
目录
| 家属 | 备选案文 |
|---|---|
| 行动 | 暗色、暗色盲、暗高对比、亮相、淡色盲、淡高对比 |
| 阿尔德瓦尔克 | 墨水, 蓝色 |
| 猫头鹰 | 拉特、弗拉佩、马克奇亚托、莫查 |
| 东京之夜 | 白天,风暴,夜晚 |
| 罗塞松 | 黎明、月亮、主线 |
| 格鲁弗盒 | 光, 暗色( 暗色) |
| 永远的森林 | 光, 暗色( 暗色) |
| 阿难 | 光明、幻影、黑暗 |
| 太阳能化 | 光, 暗色( 暗色) |
| 莫诺凯 | 经典 |
| 北部 | 北, 光线 |
| 德古拉, (中文(简体) ), 一个黑暗, (中文(简体) ), 神奈川岛, (中文(简体) ), 韦斯珀 | 每人一个 |
六个 行动 变体为被管理的家庭——两个外表×3 无障碍的变体——它们都是 编 成 从上游调色板 而不是编写或复制:
| 备选案文 | 画布 | 头 | 口音 |
|---|---|---|---|
| 暗号 | GitHub 暗暗默认, 重现灰色 | GitHub 黑暗默认 | 它的紫外线 |
| 深色盲动 | 同样的回眼画布 | GitHub 暗色盲变 | 它的紫外线 |
| Adea 暗高对比度 | GitHub 黑暗高对比度, 重现灰心 | GitHub 暗高对比度 | 它的紫外线 |
| 事业之光 | GitHub 光线默认 #ffffff | GitHub 黑暗默认, 已移植 | 它的紫外线 |
| Adea 浅色盲 | GitHub 浅色盲 #ffffff | GitHub 暗色盲, 已移植 | 它的紫外线 |
| Adea 轻高对比度 | GitHub 光高对比度 | GitHub 暗高对比度, 已移植 | 它的紫外线 |
重用是全家定制的: GitHub 的深灰色缩放被剪去
蓝色( b)h≈258),因此其染色体被减半并被回旋至紫灰色--
家庭的紫外口音是用来读的 笼子没有动过
(GitHub的深色调色板仍为GitHub),可访问变体是构件
gitHub自己的无障碍变体 每一个光变体都是阴暗的
对应方的色调被移植到纸张上,所以在两种模式中,一个红色是相同的红色
变体和切换外观会改变轻而无其他.
tests/provenance.test.ts (a) 声称合伙关系—— 相同的血清和铬
一个变体的两个外观上 每一个相色相的作用 被重新剪接的画布,
和紫罗兰口音 所有6.
其他主题转载了别人的调色板 从一个命名的修订,是 贷记 通知。 。 。 .
用这个
对于需要调色板的应用程序,直接导入其生成的模块:
import theme from '@adea-ai/themes/themes/adea-dark'
import { toXtermTheme } from '@adea-ai/themes/adapters/xterm'
terminal.options.theme = toXtermTheme(theme)
此切入点不加载目录, 其他调色板, 或正常化 .
@adea-ai/themes/metadata 出口 themeMetadata,包含
身份、家庭、外貌、描述、标记和出处,没有调色板
数值。 通过动态导入的静态映射来装入所选调色板
应用程序捆绑器可以创建单独的块. 下面的完整目录 API
在需要每个调色板时仍可使用.
所有JavaScript导出都使用具有明确相对文件扩展名的本土无害环境管理.
阴影适配器在 @adea-ai/themes/adapters/shadcn。 。 。 .
tests/package.test.ts 建立并包装实际档案,解决其公开问题
并检查单主题浏览器捆绑是否排除其他
调色板和目录工具。 它的16KiB未压缩的天花板 叶子前厅
用于一个记录和终端适配器,同时检测目录是否包含.
此软件包仍然没有运行时间依赖性 .
import { getTheme, themeFamilies, resolveTheme } from '@adea-ai/themes'
import { themeCssVariables } from '@adea-ai/themes/adapters/css'
import { toXtermTheme } from '@adea-ai/themes/adapters/xterm'
import { toShikiTheme } from '@adea-ai/themes/adapters/shiki'
// Apply a theme to the document.
const theme = resolveTheme('catppuccin-mocha', 'dark')
for (const [name, value] of Object.entries(themeCssVariables(theme))) {
document.documentElement.style.setProperty(name, value)
}
// Colour a terminal.
terminal.options.theme = toXtermTheme(theme)
// Register a syntax theme.
const highlighter = await createHighlighter({ themes: [toShikiTheme(theme)], langs: [...] })
syntaxRolesHex(theme) 将评论保留在目录中 故意安静的默认值.
对于评论和diff标记为小内容文本的编辑调色板,
editorRolesHex(theme) 返回每个四舍五入的十六进制值的编辑器角色
相对4.5:1的对比底. 源语法调色板不变.
每个导出的主题值都是 oklch() 字符串,表示浏览器执行
彩色工作,消费者可以作曲—— color-mix(in oklch, var(--adea-accent), transparent 20%) - 并获得可预测的结果。 需要六分位数的适配器( Xterm,
施基)皈依,游戏绘画而不是剪辑.
设计,在四个决定中
Adea拥有斯图和变相. 17个表面角色在
src/schema.ts 是合同。 没有要求上游项目满足要求.
palettes/ 持有根据固定修订案复制的Base24计划
src/normalize.ts 是一个输入成为 cononical 应用程序主题的单一位置.
添加主题为行 src/sources.ts 还要重建.
主题也可能是: 由两个捐助者组成 一个提供结构,另一个
胡同——爱德华自己的六个主题都是如此构建的. 组成是插槽
地图在 COMPOSED_SOURCES所以父母都留下名字 重新洗刷
单行 diff 而不是重写 。 组合也可以声明
hueTranspose,将借入的色调套件移动到不同的画布上作为
组:hue和chroma 完好无损,每个相对的亮度都保留了下来.
OKLCH是代表人物. 概念上统一的光度是 可以通过添加固定的阶梯来建立表面阶梯, 对比性故障可以通过 移动一轴, 和一个主题可以重排 而不重建它的坡道 通过眼睛.
对比是测量的,而不是假设的. 没有清空,没有输入目录
定义的下限 src/policy.ts 检查 src/validate.ts,以及 bun run catalogue:build 如果主题失败
无法在预算范围内修复 。 管道发现真正的缺陷
手写的目录本来可以运出:
- 太阳光体正文在自身背景上测量4.28:1——由WCAG AA.
- 东京之夜的黑色是1.17: 1对它的帆布,和Gruvbox Light's
white曾经 将Base24的灰度反射的光线方案 斜坡. - Everforest Light在自己的画布上没有超过 2.6:1的颜色,所以它的地位 重音作用必须深化,而不是作为出版物使用.
衍生出出出自出自相. 语法角色、图表序列和状态填充
主题的功能src/derive.ts因此,两个消费者不能
关键词是什么颜色有分歧.
Base24是一座桥,不是计划
Base24是一种极佳的交换格式和较差的应用程序计划:它有一个 表示已贬值的 API 的颜色的插槽, 且没有“ 表面一步” 的意思 在卡片上方"。 因此,Base24是价值如何得到 内 和他们如何得到 关闭数字 :
import { toBase24, formatBase24Scheme, parseBase24Scheme } from '@adea-ai/themes'
import { getBase24Scheme } from '@adea-ai/themes'
formatBase24Scheme(toBase24(getTheme('nord')!)) // a Base24 scheme
getBase24Scheme('nord') // the vendored original, untouched
toBase24 base24的橙色和棕色花槽,因为Adea的图案没有
发挥它们的作用; getBase24Scheme 返回复制的艺名,供调用者使用
需要它的字节换字节。 地图记载于 src/adapters/base24.ts。 。 。 .
适配器
| 导入 | 对于 | 产出 |
|---|---|---|
adapters/css | 申请 | OKLCH 中的 CSS 自定义属性 |
adapters/tailwind | 申请 | a 尾风 v4 @theme inline 块 |
adapters/shadcn | 此 ogg 组件 | 阴影词汇,来自同一来源 |
adapters/xterm | 弹壳 | xterm.js 仅限六进制 ITheme |
adapters/shiki | 代码视图 | a Shiki主题注册 |
adapters/base24 | 接口 | Base24,双向 |
暗影桥在读代码前值得了解: Adea's accent
成为阴影 primary,因为阴影 --primary 是动作颜色和
--accent 是个花花公子 将每个主按钮都灰了.
地图在 src/adapters/shadcn.ts。 。 。 .
处理中
bun install
bun run verify # formatting, typecheck, lint, catalogue freshness, tests, build
bun run catalogue:build # regenerate src/generated from palettes/ and sources.ts
bun run catalogue:check # fail if the committed catalogue is stale
bun run vendor # refresh palettes/ from the pinned upstream revision
生成的目录是 承诺,以及 catalogue:check 当它和它的失败时
输入不一致。 因此,调色板更改是可审查的 diff 而不是
无形之漂.
palettes/ 由 bun run vendor,它复制了 Base24 从
以 src/sources.ts。采用新的上游变化
CATALOGUE_REVISION运行 vendor,则 catalogue:build 并阅读 diff ——
构建其修复的每个值和原因的打印.
从两个调色板组成主题
添加条目到 COMPOSED_SOURCES 内 src/sources.ts 命名两个捐献弹片
插槽映射, 以及合成的插槽; 列出要粘接结构的灰度角色
捐助者; 设置 hueTranspose 如果这些花被借给别的画布;
接下来 bun run vendor && bun run catalogue:build. 供应商步骤声称这两份地图
覆盖每个 Base24 插槽,所以一个组成不能是半指定. 每半个
对捐助者的捐款 tests/provenance.test.ts。 。 。 .
添加主题
- 将Base24计划添加到
palettes/(或让vendor获取 : 添加弹片到VENDORED_SOURCES内src/sources.ts(第一编). - 记录其家族项目、 URL 和许可证
FAMILY_PROVENANCE,以及 输入VENDORED_SOURCES——标识,标签,说明,外观,标签. - 声明
accentSlot如果这个家庭的身份不在它的蓝槽里 永远的森林 是绿色的,Rosé Pine是虹膜,Monokai是红色的. - 添加忠诚断言
tests/provenance.test.ts。套房没有故障 第一,不记录其颜色来源,就无法添加主题. bun run catalogue:build && bun run verify。 。 。 .
如果建筑物报告的作用无法在预算范围内弥补,答案是:
无论是调色板真正不能表达出这个角色,
在这种情况下,在条目的描述中这样说, 或者地板是错误的,在这种情况下
换个位置 CONTRAST_FLOORS 并证明它在那里.
许可证
阿帕奇2.0 (英语). 调色板不是: 看 通知 每个项目及其条件.