Vue bindings for Zero
Usage
Install package:
# npm npm install zero-vue # pnpm pnpm install zero-vue
Creating useZero and useQuery composables:
import { createZeroComposables } from 'zero-vue' import { mutators } from './mutators.ts' import { schema } from './schema.ts' // see docs for all options: https://zero.rocicorp.dev/docs/introduction const { useZero, useQuery } = createZeroComposables({ userID, server: import.meta.env.VITE_PUBLIC_SERVER, schema, mutators, kvStore: 'mem', }) // OR with computed options: const { useZero, useQuery } = createZeroComposables(() => ({ userID: userID.value, server: import.meta.env.VITE_PUBLIC_SERVER, schema, mutators, kvStore: 'mem', })) // OR with a Zero instance: const { useZero, useQuery } = createZeroComposables({ zero: new Zero({ userID, server: import.meta.env.VITE_PUBLIC_SERVER, schema, mutators, kvStore: 'mem', }), })
To query data:
import { useQuery, useZero } from './use-zero.ts' const zero = useZero() const { data: users } = useQuery(() => zero.value.query.user)
💻 Development
- Clone this repository
- Enable Corepack using
corepack enable - Install dependencies using
pnpm install - Run interactive tests using
pnpm dev
Credits
The implementation here was based on zero-solid. You can also check out hello-zero-nuxt to see the original implementation and history of this project.
License
Made with ❤️
Published under MIT License.