OSS探訪GitHubでログイン

CSSDBとbrowser targetから必要な標準CSS transformを選び、PostCSS pipelineへまとめる

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
1,057
主要言語
CSS
ライセンス
MIT-0
リポジトリ最終更新
2026/10/05
ページ内ナビ

概要

CSSTools PostCSS Pluginsは標準化中のCSS featureを扱うplugin、plugin pack、parser/utility、CLI等をまとめたmonorepoです。代表的なpostcss-preset-envはCSSDBとBrowserslistから必要なtransformを選択し、Autoprefixerも含めてmodern CSSをtarget browser向けへ変換します。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

主な特徴

標準CSS featureごとのPostCSS pluginを多数提供する

custom media、nesting、modern color、logical properties等、CSS specificationに沿うfeatureをbrowser向けCSSへ変換するplugin群を収録しています。

出典:[1]

postcss-preset-envで複数pluginをbrowser targetに応じて選択する

CSSDBのfeature support dataとBrowserslistを使い、target browserに不要なtransformをskipしながら必要なfallback/polyfillをまとめて適用します。

出典:[3][4]

Autoprefixerをpreset内で共有する

postcss-preset-envはAutoprefixerを内包し、同じBrowserslist targetを共有して必要なvendor prefixだけを適用します。

出典:[3][4]

向いている用途

modern CSS syntaxをauthoringしつつlegacy/target browser向けoutputをbuildで生成したいprojectに向く

個別pluginを一つずつ管理する代わりに、browser policyとfeature stabilityを基準にPostCSS pipelineを更新したいfrontend buildへ適します。

出典:[3]

導入前の確認

すべての新CSS behaviorをCSSだけで完全polyfillできるわけではない

READMEは一部featureでcompanion client libraryが必要になる場合を明記しています。transform後CSSがnative behaviorと完全同等になるかはfeatureごとに確認してください。

出典:[3]

monorepo root versionとuser-facing package versionは異なる

root packageはprivateな1.0.0ですが、利用者向けpostcss-preset-envは11.6.0です。同packageはNode >=20.19.0、PostCSS ^8.4を要求します。

出典:[2][4][5]

参考にした公式資料

  1. [1]CSSTools PostCSS Plugins README(2026-10-05)
  2. [2]CSSTools monorepo package metadata(2026-10-05)
  3. [3]postcss-preset-env README(2026-10-05)
  4. [4]postcss-preset-env 11.6.0 package metadata(2026-10-05)
  5. [5]postcss-preset-env changelog(2026-10-05)
  6. [6]CSSTools MIT-0 license(2026-10-05)
編集部からの補足

このrepositoryは多数のplugin・packageを個別version管理するmonorepoです。代表的なplugin packpostcss-preset-envは11.6.0で、Node.js >=20.19.0とPostCSS ^8.4を要求します。repo rootのprivate version 1.0.0を製品versionとして扱わない点に注意してください。

3ステップで試す

  1. 1

    postcss-preset-env 11.6.0とPostCSSを導入する

    Node.js 20.19.0以上で代表的なplugin packとPostCSSをversion固定します。

    demo=$(mktemp -d "${TMPDIR:-/tmp}/csstools-preset-env.XXXXXX") && cd "$demo" && npm init -y >/dev/null && npm install --save-exact postcss@8.5.29 postcss-preset-env@11.6.0
  2. 2

    modern CSSと変換scriptを作る

    custom mediaとnestingを含むmodern CSSを、CSSDB featureを広く有効化したpresetで処理します。

    printf "%s\n" '@custom-media --narrow (width <= 50rem);' '.card { color: rebeccapurple; @media (--narrow) { color: blue; } }' > input.css && printf "%s\n" "import fs from 'node:fs';" "import postcss from 'postcss';" "import postcssPresetEnv from 'postcss-preset-env';" "const css = fs.readFileSync('input.css', 'utf8');" "const result = await postcss([postcssPresetEnv({ stage: 0 })]).process(css, { from: 'input.css', to: 'output.css' });" "fs.writeFileSync('output.css', result.css);" > demo.mjs
  3. 3

    変換後CSSを確認する

    custom mediaがtarget-compatibleなmedia queryへ変換され、元のdefinitionが除去されたことを確認します。

    node demo.mjs && grep -q "max-width: 50rem" output.css && ! grep -q "@custom-media" output.css
公式READMEで確認

成長

成長の推移 · 直近30日

1,057 Stars

推移データを蓄積中です。

Built with

カテゴリとタグ

カテゴリ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • css
  • postcss
Stars
1,057
Forks
83
Watchers
9
Open Issues
9
所有者種別
Organization
主要言語
CSS
ライセンス
MIT-0
リポジトリ最終更新
2026/10/05

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?