Closed5

T3 Stack に関連する情報 + α を収集してみる。

ymgnymgn

Tailwind 関連の便利パッケージ

これらを全て入れると訳が分からなくなると思うので、慎重に選定する。

clsx

https://www.npmjs.com/package/clsx
クラスをスッキリ書けるパッケージ。最初からこれで書いていきたい。

tailwind-merge

https://github.com/dcastil/tailwind-merge
外部からコンポーネントのスタイルを上書きしたい時に、競合するスタイルを削除してくれるパッケージ。

Tailwind Variants

https://www.tailwind-variants.org/
バリアントを簡単に定義できる(primary, secondary とか)パッケージ。
他にレスポンシブ対応を楽に書けたり、スロットで外部からスタイルを上書きすることもできる。

ymgnymgn

UI コンポーネントライブラリ

shadcn/ui

https://ui.shadcn.com/
Radix UI + Tailwind ベースの UI コンポーネント集。

公式ドキュメントにこう書いているから、コンポーネントライブラリと呼ぶのは間違いっぽい。

This is NOT a component library. It's a collection of re-usable components that you can copy and paste into your apps.

コンポーネントをコピペで増やしていけてかなり DX が良い。

clsx()twMerge() をラップした cn() も提供してくれるので使いやすい。

ymgnymgn

その他気になるパッケージ

Umami

https://umami.is/
オープンソースの Google Analytics の代替。

Drizzle ORM

https://orm.drizzle.team/
SQL の ORM 。
個人的には T3 Stack で選定されている Prisma は独自の記法を覚えないとダメなのと、クエリの発行方法が SQL らしくないのがしっくりこないため Drizzle ORM の方が好み。

Kysely

https://kysely.dev/
タイプセーフに書ける SQL query builder 。
Drizzle ORM よりもこのライブラリの方が好みかもしれない。

React Hook Form

https://www.react-hook-form.com/
使い方覚えないとですね...。

状態管理

https://recoiljs.org/

Meta 製ということで、状態管理が必要になるような案件では採用(サードパーティのパッケージを増やしたくないという意図)したいところ。
(個人的には Jotai も気になっているが...)

https://jotai.org/
Recoil に比べて軽量かつ Key の指定が不要なのが魅力的。日本人が開発していることもあって、情報も手に入りやすい。
個人開発では積極的に使っていく。

このスクラップは2023/07/22にクローズされました