[WIP] Next.js + Shadcn + Tailwind + Lexical構成にダークテーマを導入した際のメモ

夜中に開発していると、暗めのエディタと真っ白なサイトの切り替えがかなりしんどい。

実装としても面白そうなので、ダークテーマ導入を優先してみることにする。


サイト構成

  • framework: Next.js
  • UI framework: Shadcn
  • CSS framework: Tailwind
  • その他: Lexical


Shadcn自体はもともとdark themeを導入しやすい仕組みになっている(後述)ので、Shadcnコンポーネントで構成している部分は殆ど調整が必要ないはず。

記事全般に使用しているLexicalは、Lexical独自のTheming機能を持っているので、そのあたりの調整が必要になってかなという事前の見積もり。


技術選定&導入

TODO: local storageベース?でタブ間共有などがスムーズにできる。classを指定するかattributeを指定するかでthemeの適用方法を変えることができて、CSS frameworkとの橋渡しがしやすい。


スムーズに対応できたポイント

shadcn系のコンポーネントは基本的にうまくいった。

lucide-reactのアイコンも調整不要だった。


調整が必要だったポイント

hover:bg-gray-50をhober:bg-accentに置き換えてみたり。



Related Articles