コンテンツにスキップ

SynState

TypeScript/JavaScript 向けの軽量・高性能な状態管理ライブラリ。シンプルなグローバル状態から、debounce や switchMap を使った複雑な非同期パイプラインまで統一 API で記述。React Compiler と完全互換。

シンプルな状態管理

React の useState / useReducer に似た使いやすい createStatecreateReducer でグローバル状態を管理。

高パフォーマンス

グリッチフリー O(n) 伝搬 — Jotai の約30倍、Redux の約16倍高速。ベンチマーク結果を参照。

軽量

~4.5 kB min+gzip 、外部ランタイム依存は1つのみ。

非同期オペレーター内蔵

debouncethrottleswitchMap など — 複雑な非同期処理を外部ライブラリなしに統一的な宣言的 API で記述。

React 最適化

React Compiler と完全互換。synstate-react-hooks により数行でコンポーネントにグローバル状態を導入。

フレームワーク非依存

コアはバニラ JavaScript、Vue、Svelte など任意のフレームワークでそのまま動作。React / Preact 向けには hooks ラッパー、Preact 向けにはさらに Preact Signals 連携も用意。