Repolode
jpudysz

jpudysz/react-native-unistyles

Nitro ModulesとJSIを基盤に、テーマ、レスポンシブスタイル、バリアントをStyleSheetに追加するReact Native向けスタイリングライブラリ。

スター
2,973
フォーク
139
未解決の Issue
4
最終コミット
4 日前

これは何?

Unistylesは、従来のStyleSheetのワークフローを、JSIとNitro Modulesを通じて公開されるC++コアに置き換えるReact Native向けスタイリングライブラリです。スタイルは一度定義すれば、関数を1回呼び出すだけで登録済みのテーマに切り替えられ、画面サイズなどの実行時条件にも応じて変化します。

このライブラリはNew ArchitectureとFabricに対応しており、Reactコンポーネントを再レンダリングするのではなく、Shadow Treeを通じてネイティブビューを更新します。ラッパーコンポーネントを追加しないため、ビュー階層はそのまま保たれます。Expoのdevelopment build、クラスや擬似クラスを扱えるCSS風のカスタムパーサーを使ったWeb、Next.jsでのサーバーサイドレンダリングにも対応しています。

このプロジェクトを使うにはReact Native 0.85以降、React 19以降が必要です。Expoで使う場合はExpo SDK 56以降が必要です。古いReact NativeバージョンとOld ArchitectureにはUnistyles 2.0が対応しています。

主な機能

  • 01テーマを登録し、関数を1回呼び出すだけで切り替えられます。
  • 02画面サイズなどの実行時条件に応じてスタイルが変化します。
  • 03JSIバインディングとNitro Modulesを備えたC++コアを基盤としています。
  • 04ラッパーコンポーネントを追加せず、ビュー階層をすっきり保てます。
  • 05クラスや擬似クラスを使ったWebに加え、Next.jsでのSSRに対応しています。
  • 06モノレポ内の複数プラットフォームでスタイルを共有できます。

ユースケース

  • ライトテーマとダークテーマが必要なReact Nativeアプリの開発。
  • ネイティブモバイルとReact Native Webのプロジェクト間でスタイルを共有。
  • development buildを使ったExpoアプリへのレスポンシブレイアウトの導入。
  • React Nativeのコードベースをテーマ主導のスタイリングシステムへ移行。

クイックスタート

  1. 1

    ライブラリと依存関係の Nitro Modules をインストールします

    yarn add react-native-unistyles react-native-nitro-modules
  2. 2

    お使いのプラットフォームのインストールガイドに従ってください

使う前に知っておきたいこと

  • React Native 0.85 以降(New Architecture 有効)と React 19 以降が必要です。
  • Expo プロジェクトでは開発ビルドが必要です。Expo Go はサポートされていません。

トピック

よくある質問

react-native-unistyles とは?
Nitro ModulesとJSIを基盤に、テーマ、レスポンシブスタイル、バリアントをStyleSheetに追加するReact Native向けスタイリングライブラリ。 Unistylesは、従来のStyleSheetのワークフローを、JSIとNitro Modulesを通じて公開されるC++コアに置き換えるReact Native向けスタイリングライブラリです。スタイルは一度定義すれば、関数を1回呼び出すだけで登録済みのテーマに切り替えられ、画面サイズなどの実行時条件にも応じて変化します。
react-native-unistyles は無料で使えますか?ライセンスは?
react-native-unistyles にはライセンスが明記されていません。コードは公開されていますが、ライセンスがない場合は再利用の許諾がないため、利用前に作者に確認することをおすすめします。
react-native-unistyles は今もメンテナンスされていますか?
活発にメンテナンス中。react-native-unistyles の最終コミットは 2026年11月3日 です。
react-native-unistyles は何に使えますか?
ライトテーマとダークテーマが必要なReact Nativeアプリの開発。 ネイティブモバイルとReact Native Webのプロジェクト間でスタイルを共有。 development buildを使ったExpoアプリへのレスポンシブレイアウトの導入。 React Nativeのコードベースをテーマ主導のスタイリングシステムへ移行。
react-native-unistyles のインストール方法は?
ライブラリと依存関係の Nitro Modules をインストールします: yarn add react-native-unistyles react-native-nitro-modules お使いのプラットフォームのインストールガイドに従ってください
react-native-unistyles はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/jpudysz/react-native-unistyles

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト