0.2.2 • Published 5 months ago

@ys319/y-supa-changes v0.2.2

Weekly downloads
-
License
MIT
Repository
github
Last release
5 months ago

y-supa-changes

Supabase postgres changes provider for yjs.

Install

Exports

  • Core
    • createSupaChangesAdapter
  • React helper (with y-valtio)
    • SupaChangesContextProvider
    • useSupaChanges

Usage

Core

import { createSupaChangesAdapter } from "@ys319/y-supa-changes"

// Create adapter.
// Resolve promise on metadata loaded.
const provider = await createSupaChangesAdapter(
    supabaseClient,
    room_id,
    yjs_doc,
);

// Start sync.
// Resolve promise on server connected and first state synced.
await provider.initialize();

React

Use SupabaseChangesContextProvider. (Too long name. lol)

import { SupaChangesContextProvider } from "@ys319/y-supa-changes/react"

// ...

<SupaChangesContextProvider<Store>
    supabase={supabase}
    room={workspace}
    storeInitFn={storeInit}
    Loading={<Loading />}
>
    <App />
</SupaChangesContextProvider>;

And use hooks.

import { useSupaChanges } from "@ys319/y-supa-changes/react"

// ...

const { store } = useSupaChanges<Store>()
0.2.2

5 months ago

0.2.1

6 months ago

0.2.0

6 months ago