Pāriet uz saturu

Neliela, no atkarībām brīva, reaktīva datu krātuve un sinhronizācijas dzinis JavaScript lietotnēm. Tā nodrošina detalizētus abonementus, lai saskarnes tiktu renderētas atkārtoti tikai tad, kad mainās attiecīgie dati, tādējādi lietotnes ir ātras un paredzamas.

Datus var modelēt kā vienkāršus atslēgas un vērtības pārus vai tabulāras struktūras ar rindām un šūnām. Iebūvētās iespējas ietver shēmas ar noklusējuma vērtībām un tipu secināšanu, indeksus ātrai meklēšanai, metriku apkopošanai, attiecības starp tabulām, atsaukšanas/atjaunošanas kontrolpunktu sistēmu un SQL līdzīgu vaicājumu dzini (TinyQL) datu atlasīšanai, savienošanai, filtrēšanai un grupēšanai reaktīvā režīmā.

Paredzēta lokāli prioritārām un bezsaistes darbplūsmām; tā piedāvā sākotnējo CRDT atbalstu ar MergeableStore, lai sinhronizētu un deterministiski apvienotu datus starp klientiem un serveriem. Datus var saglabāt pārlūka krātuvē un IndexedDB, kā arī tādās datubāzēs kā SQLite un PostgreSQL; pieejamas arī integrācijas ar Yjs un Automerge.

Neobligātās React saites ietver āķus un vieglus saskarnes komponentus pilnībā reaktīvu saskarņu veidošanai, kā arī lietotnē iebūvētu Inspector, lai izstrādes laikā reāllaikā skatītu un rediģētu krātuves datus. Lai gan iespēju ir daudz, kodols joprojām ir neliels (aptuveni 5.3kB–11.7kB saspiestā veidā), pilnībā dokumentēts un rūpīgi testēts.

Funkcijas

  • Reaktīva datu krātuve atmiņā
  • Atslēgas un vērtības, kā arī tabulāro datu modeļi
  • Detalizēti klausītāji un abonementi
  • TinyQL vaicājumu dzinis (atlasīšana/savienošana/filtrēšana/grupēšana)
  • Indeksi ātrai meklēšanai
  • Metrika un apkopošana
  • Attiecības starp tabulām
  • Shēmas ar noklusējuma vērtībām un tipu secināšanu
  • Kontrolpunkti ar atsaukšanu/atjaunošanu
  • Vietējais CRDT MergeableStore
  • Sinhronizācija, izmantojot WebSockets, BroadcastChannel un pielāgotus transporta mehānismus
  • Datu saglabāšana pārlūka krātuvē un IndexedDB
  • Datu bāzu atbalsts datu saglabāšanai SQLite un PostgreSQL (arī tādos variantos kā Bun/Expo SQLite)
  • Integrācijas ar Yjs, Automerge, CR-SQLite, PGlite, ElectricSQL, Turso, PartyKit, Cloudflare Durable Objects
  • Neobligāti React āķi un iepriekš izveidoti komponenti (ui-react, ui-react-dom)
  • Lietotnē iebūvēts datu Inspector izstrādes rīks
  • Lokāli prioritārs un bezsaistē ērti lietojams dizains
  • Neliels komplekts bez atkarībām
  • 100% testu pārklājums un plaša dokumentācija

Saistītie vienumi

Legend State

Šī jaudīgā bibliotēka vienkāršo stāvokļa pārvaldību lietotnēs un atvieglo darbu ar sarežģītiem datiem.

MobX

Šis stāvokļa pārvaldības risinājums ļauj nevainojami integrēt lietotnēs dinamiskus datus un bez piepūles pielāgojas izmaiņām.

Redux Toolkit

Visaptverošs rīku komplekts, kas vienkāršo un uzlabo Redux izstrādi, nodrošinot paredzamu un uzturamu lietotņu darbību.

valtio

Šī bibliotēka vienkāršo uz starpniekobjektiem balstītu stāvokļa pārvaldību mūsdienīgās lietotnēs, uzlabojot izstrādes pieredzi ar efektīvu renderēšanu un ērtu stāvokļa apstrādi.

TanStack DB

Reaktīva klienta datu krātuve ar aktuāliem vaicājumiem un optimistiskām mutācijām ātrām, konsekventām saskarnēm un reāllaika sinhronizācijai.

Jotai

Jaudīgs, bet viegls stāvokļa pārvaldības risinājums, kas React lietotnēs izmanto atomāru pieeju stāvokļa pārvaldībai.

MobX-State-Tree

Pilnvērtīga bibliotēka, kas vienkāršo stāvokļa pārvaldību, nodrošinot strukturētu pieeju mainīga stāvokļa apstrādei.

TanStack Router

Mūsdienīga un mērogojama maršrutēšanas bibliotēka, kas īpaši izstrādāta React un paredzēta tipizēšanai un efektīvai datu pārvaldībai.