@feugene/granularity-tokens

中文文档
2.5.0发布于 2026/10/28LicenseRef-Granularity-EUC-1.1TypeScriptES Module零依赖构建来源已验证近 30 天下载 2240

@feugene/granulality的设计符和主题: 符号注册,按模式和主题构建器的主题数据.

中文使用文档
文档目录5 节
  1. Что
  2. {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF…
  3. Своя
  4. Как
  5. Лицензия

@feugene/granularity-tokens

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 @feugene/granularityкакие:токены也 # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # ## # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # выпуске.

(原始内容存档于2018-10-21). QQ: QQ: QQ: QQ: QQ: QQ: QQ: QQ: {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 режимы. {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 docs/concepts.md. . . . . , {\fn黑体\fs20\shad2\2aH82\3aH20\4aH33\fscx95\3cH592001\be1}♪#################################################### ################################################################################################################################################################################.

yarn add @feugene/granularity-tokens

{\fn黑体\fs20\shad2\2aH82\3aH20\4aH33\fscx95\3cH592001\be1}你觉得怎么样 @feugene/granularity。 。 。 .

Что

ЧтоГдеПодпуть
Реестр:примитивы也tokens/*.json@feugene/granularity-tokens
Каталог:id,название也themes/*/theme.json@feugene/granularity-tokens (单位:千美元)grThemeCatalog(中文(简体) )
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢themes/<slug>/@feugene/granularity-tokens/themes/<slug>/theme.json; по выбору в- loadThemeData(id)
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # defineTheme, (中文(简体) ), extendMode, (中文(简体) ), createMode, (中文(简体) ), tone时src/theme/@feugene/granularity-tokens/theme
说吧 loadTheme - загрузчик и defineThemesrc/theme/node.ts@feugene/granularity-tokens/theme/node
校对:Soup theme:copyscripts/theme-copy.mjsбинарь gr-theme-copy
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}CSS总动员src/theme/apply.ts@feugene/granularity-tokens/theme/apply

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 themes/README.md{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 {\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}你觉得呢 docs/themes.md{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 {\fn黑体\fs20\shad2\2ah82\3ah20\4ah33\fscx95\3ch592001\be1}你觉得怎样 docs/tokens.md。 。 。 .

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢

(原始内容存档于2017-10-21). QQ: QQ: QQ: QQ: QQ: QQ: QQ: QQ: QQ: QQ: QQ: QQ: QQ: QQ: QQ: QQ: QQ: кто. Значения подключаются.

import { grRoleTokens, type GrThemeData, resolveModes } from '@feugene/granularity-tokens'
import slateData from '@feugene/granularity-tokens/themes/slate/theme.json'

// JSON типизируется по содержимому: `colorScheme` в нём просто строка.
const slate = slateData as GrThemeData
const dark = resolveModes(slate).get('dark')!
const surfaces = grRoleTokens
  .filter(token => token.section === 'Surface roles')
  .map(token => ({ name: token.name, value: dark[token.name.slice(2)] }))

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 -- (单位:千美元)gr-bg),"花岗岩";"花岗岩";"花岗岩"等--gr-bg) (中文(简体) ).

Тему,相去相去也 сейчас,-грузит loadThemeData? ? ? ? ? ? ? ? ? ? ? ? ? запрошенная. {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得怎样.

import { loadThemeData, resolveModes } from '@feugene/granularity-tokens'

const clay = await loadThemeData('clay')
const light = resolveModes(clay).get('light')!

Своя

Папка темы темы: theme.json, (中文(简体) ), root.json, (中文(简体) ), modes/<режим>.json时 components/<пакет>/<Компонент>/С "extends": "slate" {\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}你觉得呢 правками;- gr-theme-copy slate <id> - 。 。 。 。 .

import { loadTheme } from '@feugene/granularity-tokens/theme/node'

const brand = loadTheme(new URL('./src/themes/brand/', import.meta.url))

loadTheme {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢? В sources он:правка也. В extends —— 说 {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你说什么? {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 themes (原始内容存档于2017-10-21). granum. @feugene/granum . . . . . 对等单位: theme/node и gr-theme-copy。 。 。 .

Режим,поверх extendMode (с-.-.) createMode)), семья (тона) tone。 。 。 , { theme, mode } 说吧

import { extendMode, tone } from '@feugene/granularity-tokens/theme'

const surfaces = { '--gr-bg': '#041e2b', '--gr-fg': '#e8f4fa', '--gr-card': '#0a2f42' }

export const ocean = extendMode({
  name: 'ocean',
  base: 'dark',
  tokens: { ...surfaces, ...tone('azure', '#38bdf8', { base: surfaces }) },
})

ocean.definition // → modes.define.ocean записи темы в конфиге granum: extends, colorScheme, только отличия
ocean.fallbacks // → modes.define.ocean.fallbacks: hover и active от ролей режима
ocean.css // CSS под парой slate-ocean — для подключения без granum

Как

(原始内容存档于2018-09-26). . . @feugene/granularity {\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}你觉得呢 провайдера. Темы,их也 themes 颗粒 (单位:千美元)[{ theme: '<slug>', modes: ['light', 'dark'] }]; ; ; ; ; ; ; ; themes - ошибка списком тем тем тем {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 включаются data-theme="<slug>-<режим>", 翻译: useTheme() ядра. 克萨斯州 @feugene/granularity/themes/<slug>.css。 。 。 .

Лицензия

参考参考文献-EUC-1.1。 。 。 .

版本与发布记录

@feugene/granularity-tokens 共发布 14 个版本,首次发布于 2026/10/20;过去 12 个月发布了 14 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
2.5.0latest2026/10/2817 天前
2.4.02026/10/2817 天前
2.3.12026/10/2817 天前
2.3.02026/10/2619 天前
2.2.02026/10/2223 天前
2.1.02026/10/2223 天前

关于 @feugene/granularity-tokens 的常见问题

@feugene/granularity-tokens 是什么?

@feugene/granulality的设计符和主题: 符号注册,按模式和主题构建器的主题数据.

如何安装 @feugene/granularity-tokens?

在项目目录运行 npm install @feugene/granularity-tokens,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 gr-theme-copy,可以用 npx gr-theme-copy 直接运行。

@feugene/granularity-tokens 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@feugene/granularity-tokens 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@feugene/granularity-tokens 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=22。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@feugene/granularity-tokens 可以商用吗?

@feugene/granularity-tokens 使用 LicenseRef-Granularity-EUC-1.1 许可。声明的许可为 LicenseRef-Granularity-EUC-1.1,请阅读许可原文确认使用条件。以上为概括,不构成法律意见,请以许可原文为准。

@feugene/granularity-tokens 的下载量有多少?

根据 npm 官方下载统计,@feugene/granularity-tokens 在 2026/10/15 – 2026/11/13 这 30 天内被下载 2,240 次,日均约 75 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@feugene/granularity-tokens 还在维护吗?

最新版本 2.5.0 发布于 2026/10/28(17 天前);至今共发布 14 个版本,其中过去 12 个月发布了 14 个;首次发布于 2026/10/20。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。