Upgrade to Pro — share decks privately, control downloads, hide ads and more …

TailwindCSSでUIライブラリを作る際のハマりどころ

 TailwindCSSでUIライブラリを作る際のハマりどころ

Meguro.css #10 で発表した資料です

did0es

May 10, 2024
Tweet

More Decks by did0es

Other Decks in Technology

Transcript

  1. 自己紹介 did0es(Hirai Shuta) SWE @ CyberAgent, Inc. Main organizer @

    Meguro.es X: https://x.com/did0es GH: https://github.com/shuta13
  2. UIの共通化 従来は外部のUIライブラリを使用していた ・MUI v5とNextUI v1を使っていた ・アプデがつらすぎる  ・特に NextUI v1 は

    alpha 版だった  ・UI ライブラリで alpha 版... 上記のライブラリと互換性のあるUIライブラリを作る ・全てのプロジェクトで React を使っているので React 製 ・CSS をゴリゴリ書いても良かったが...  ・プロダクト全体で使う TailwindCSS を流用
  3. classNameの衝突 こちらも TailwindCSS と UI ライブラリを併せて使うときに発生 ・TailwindCSS を入れた側で theme を

    extend できなくなる ・正確には UI ライブラリ側にある className しか使えなくなる UI ライブラリを使う側では TailwindCSS のドキュメントから 逸脱したことをやりたくない ・ユーザーはあまりフロントエンドに詳しくない場合もある ・独自 className しか使えない状況は避けたい
  4. TailwindCSSを使う前に 以下を確認しましょう ・本当に TailwindCSS が必要ですか?  ・CSS 構文のブラウザサポートを見てみましょう ・className prefix は設定しましたか?

    ・Preflight が重複していませんか?  ・重複しても大丈夫なCSSを書く or 自前の normalize にする そもそも... ・本当にUIライブラリを自作する必要がありますか?  ・TailwindCSS ベースが良いなら daisyUI などを検討しましょう  ・すいません...