Skip to content

v1.0.0 — Schatten 1.0 (API stability 発効)

Choose a tag to compare

@yasmro yasmro released this 18 Jul 14:40
· 55 commits to develop since this release
11b3c00

Schatten の最初の stable リリースです。React コンポーネント層と、Tailwind もビルドステップも不要な framework-agnostic な .st-* CSS class API の二層構成が、このリリースから semver 契約下に入ります。

API stability commitment

v1.0.0 から、公開 surface — React props / 公開 TS 型 / .st-* クラス名 / 公開 CSS 変数(四層モデル)/ CVA 出力文字列 / multi-entry exports map(ESM-only)/ theme contract / FOUC snippet bytes(CSP hash)— の破壊的変更は major リリースのみで行い、migration guide と 1 minor 以上の @deprecated 期間を伴います。何が public かの正典は api-stability.md、機械可読の一覧は @yasmro/schatten/schatten.manifest.json です。

Highlights

  • 二層アーキテクチャ: import '@yasmro/schatten/schatten.css' 1 本で .st-* class API(252 classes / 8 state 属性 / 127 CSS 変数)。React 層(25 lv1 components)はオプション
  • ESM-only(#479): dual-package hazard を構造的に排除。Vite / Next.js 13+ / Remix / Astro / Node ≥18 ESM をサポート
  • Mode × Special 二軸テーマ: light/dark × 季節 8 パレット。data-theme 属性 1 つで JS 再レンダリングなしに全体リテーマ
  • a11y: 全 25 コンポーネントに axe-core(WCAG 2.1 A/AA)blocking gate + role/name/keyboard の a11y contract
  • SSR/CSP フレンドリー: FOUC 対策スニペットは SHA-256 pin 可能(sha256-YKmfjVUKTYOL4QdVTkV/AUzMrHhhfPw//OthidDmEEE=)

Breaking changes

v0.x からの移行は 0.x → 1.0 migration guide を参照してください(ESM-only 化を含む全 Breaking の Before → After 一覧)。

Install

npm i @yasmro/schatten

CSS のみの利用(React 不要):

<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@yasmro/schatten@1.0.0/dist/schatten.css" />

Full changelog: CHANGELOG.md