デザイントークン自動最適化ツール
Auto Design Tokens Optimizer は、デザイントークンを自動で最適化し、
背景色に合わせたコントラスト調整・色相/明度/彩度の微調整により、
一貫性がありアクセシブルな UI カラーを生成する軽量ツールです。
以下のユースケースに最適です:
- デザインシステムの色を自動で WCAG 対応させたい
- CSS 変数(
--color-primaryなど)をバラつきなく整えたい - JSON トークンを自動で正規化 → 最適化したい
- PostCSS と組み合わせてビルド時に自動修正したい
CLI と PostCSS プラグインのどちらでも利用できます。
- 🎨 背景色に合わせた自動コントラスト調整(WCAG AA / AAA 対応)
- 🔧 色相・明度・彩度(HSL)のバランス補正
- 🏷️ JSON / CSS トークンを自動で正規化
- 🗂️ CSS 変数・JSON の両方にフル対応
- ⚡ 使いやすい CLI ツール
- 🧩 PostCSS プラグインとしても動作
- 📦 ランタイム依存ほぼゼロの軽量設計
npm からインストール:
npm install @akiy2009/auto-design-tokens-optimizernpx で即実行:
npx adt-optimize --help🔹 基本
adt-optimize --input tokens.json --output tokens.fixed.json🔹 CSS 変数の場合
adt-optimize --input styles.css --output styles.fixed.css --format css| オプション | 説明 | |
|---|---|---|
--input <file> |
入力ファイル(CSS / JSON) | |
--output <file> |
出力先ファイル | |
| `--format css | json` | 出力形式を強制指定 |
| `--target-contrast 4.5 | 7.0` | WCAG の目標コントラスト |
| `--preset wcag-aa | wcag-aaa` | アクセシビリティプリセット |
--colors-only |
カラー系トークンのみ処理 | |
--dry-run |
出力ファイルを作らず標準出力へ |
postcss.config.js に追加:
module.exports = {
plugins: [
require("@gakuseibot/auto-design-tokens-optimizer/postcss")({
targetContrast: 4.5,
adjustHue: true,
adjustSaturation: true
})
]
};入力: tokens.json
{
"primary": "#4c8cff",
"background": "#ffffff",
"success": "#28c76f"
}出力: tokens.fixed.json
{
"primary": "#2d6fe8",
"background": "#ffffff",
"success": "#219c58"
}※ 値は例示であり正確ではありません。
src/
color.ts
tokens.ts
optimizer.ts
cli-core.ts
postcss-plugin.ts
utils.ts
bin/
adt-optimize.jsこのプロジェクトは Apache License 2.0 の下で公開されています。
改善案・バグ報告・Pull Request などはお気軽にどうぞ。 Email: akiy2009_dev@outlook.jp Discord: @aki._.yama
良いと思ったら GitHub リポジトリにスターをお願いします! 開発継続の大きな励みになります。
