Preskoči na vsebino

Majhna reaktivna shramba podatkov in mehanizem za sinhronizacijo za aplikacije JavaScript brez odvisnosti. Omogoča podrobne naročnine, zato se uporabniški vmesniki znova upodobijo le ob spremembi relevantnih podatkov, kar ohranja aplikacije hitre in predvidljive.

Podatke lahko modelirate kot preproste pare ključ-vrednost ali kot tabelarične strukture z vrsticami in celicami. Vgrajene zmožnosti vključujejo sheme s privzetimi vrednostmi in izpeljavo tipov, indekse za hitra iskanja, metrike za agregacije, povezave med tabelami, sistem kontrolnih točk za razveljavitev/ponovitev ter poizvedovalni mehanizem, podoben SQL-u (TinyQL), za reaktivno izbiranje, združevanje, filtriranje in grupiranje.

Zasnovan je za delovne tokove, ki najprej delujejo lokalno in brez povezave. Ponuja izvorno podporo za CRDT prek MergeableStore, ki omogoča sinhronizacijo in deterministično združevanje podatkov med odjemalci in strežniki. Podatke lahko hranite v brskalniški shrambi in IndexedDB ter v podatkovnih zbirkah, kot sta SQLite in PostgreSQL, na voljo pa so tudi integracije z Yjs in Automerge.

Izbirne povezave za React vključujejo kljuke in lahke komponente uporabniškega vmesnika za izdelavo povsem reaktivnih vmesnikov ter Inspector v aplikaciji za ogled in sprotno urejanje podatkov shrambe med razvojem. Kljub širokemu naboru funkcij jedro ostaja majhno (približno 5.3kB–11.7kB po gzipiranju), je v celoti dokumentirano in temeljito preizkušeno.

Funkcije

  • Reaktivna shramba podatkov v pomnilniku
  • Podatkovni modeli ključ-vrednost in tabelarični modeli
  • Podrobni poslušalniki in naročnine
  • Poizvedovalni mehanizem TinyQL (izbiranje/združevanje/filtriranje/grupiranje)
  • Indeksi za hitra iskanja
  • Metrike in agregacije
  • Povezave med tabelami
  • Sheme s privzetimi vrednostmi in izpeljavo tipov
  • Kontrolne točke z razveljavitvijo/ponovitvijo
  • Izvorni CRDT MergeableStore
  • Sinhronizacija prek WebSockets, BroadcastChannel in prilagojenih prenosov
  • Shranjevanje v brskalniško shrambo in IndexedDB
  • Shranjevanje v podatkovne zbirke SQLite in PostgreSQL (ter različice, kot sta Bun/Expo SQLite)
  • Integracije z Yjs, Automerge, CR-SQLite, PGlite, ElectricSQL, Turso, PartyKit in Cloudflare Durable Objects
  • Izbirne kljuke React in vnaprej pripravljene komponente (ui-react, ui-react-dom)
  • Razvojno orodje Inspector za podatke v aplikaciji
  • Zasnova za lokalno delovanje in uporabo brez povezave
  • Majhna velikost paketa in nič odvisnosti
  • 100% pokritost s testi in obsežna dokumentacija

Sorodni elementi

Legend State

Ta zmogljiva knjižnica poenostavi upravljanje stanja v vaših aplikacijah in olajša delo s kompleksnimi podatki.

MobX

Ta rešitev za upravljanje stanja omogoča brezhibno vključevanje dinamičnih podatkov v aplikacije in se brez težav prilagaja spremembam.

Redux Toolkit

Celovita zbirka orodij za poenostavitev in izboljšanje razvoja z Reduxom, ki zagotavlja predvidljivo delovanje in enostavno vzdrževanje aplikacij.

valtio

Ta knjižnica poenostavlja upravljanje stanja na podlagi posredniških objektov v sodobnih aplikacijah ter izboljšuje razvojno izkušnjo z učinkovitim izrisovanjem in preprostim upravljanjem stanja.

TanStack DB

Reaktivna shramba na strani odjemalca z živimi poizvedbami in optimističnimi mutacijami za dosledne uporabniške vmesnike z odzivnim časom pod milisekundo ter sinhronizacijo v realnem času.

Jotai

Zmogljiva, a lahka rešitev za upravljanje stanja, ki za upravljanje stanja v aplikacijah React uporablja atomski pristop.

MobX-State-Tree

Celovita knjižnica, ki poenostavlja upravljanje stanja s strukturiranim pristopom k obravnavi spremenljivega stanja.

TanStack Router

Sodobna in razširljiva knjižnica za usmerjanje, zasnovana posebej za React, s poudarkom na varnosti tipov in učinkovitem upravljanju podatkov.