### QuickstartAdd Function Example
Source: https://jazz.tools/docs/install/client
An example of a `QuickstartAdd` function, likely used for initializing or adding data in a quickstart scenario. It demonstrates importing and using `useDb`.
```javascript
export function QuickstartAdd() {
const db = useDb();
```
--------------------------------
### Vue Setup Example
Source: https://jazz.tools/docs/reference/framework-patterns
Example of setting up a database connection within a Vue component's setup function. This code must be called inside setup() or
```
--------------------------------
### React Authentication Component
Source: https://jazz.tools/docs/auth/local-first-auth
This React component handles authentication logic. Ensure you have the necessary Jazz framework setup and dependencies installed.
```tsx
import React from 'react';
interface AuthProps {
// Define props here if needed
}
const AuthComponent: React.FC = () => {
// Authentication logic goes here
return (
{/* Authentication UI elements */}
Local-First Authentication
Manage your account securely.
);
};
export default AuthComponent;
```
--------------------------------
### Solid Provider Setup
Source: https://jazz.tools/docs/reference/framework-patterns
This snippet demonstrates setting up the JazzProvider in Solid. It takes a client object as a prop.
```jsx
```
--------------------------------
### Basic Server Setup with Hono
Source: https://jazz.tools/docs/install/typescript-server
Sets up a basic Hono server with Jazz Tools context. This includes essential configurations like appId, schema, permissions, and data driver. It demonstrates how to initialize the Jazz context for server requests.
```typescript
import { Hono } from "hono";
import { serve } from "@hono/node-server";
import { createJazzContext } from "jazz-tools/backend";
import { app as schemaApp } from "../schema.js";
import permissions from "../permissions.js";
const context = createJazzContext({
appId: "todo-server-ts",
app: schemaApp,
permissions,
driver: { type: "persistent", dataPath: "./data/jazz.db" },
serverUrl: process.env.JAZZ_SERVER_URL,
backendSecret: process.env.JAZZ_BACKEND_SECRET,
jwksUrl: process.env.JAZZ_JWKS_URL,
jwtPublicKey: process.env.JAZZ_JWT_PUBLIC_KEY,
allowLocalFirstAuth: process.env.JAZZ_ALLOW_LOCAL_FIRST_AUTH !== "false",
});
const api = new Hono();
```
--------------------------------
### Rust QueryBuilder Example
Source: https://jazz.tools/docs/reference/where-operators
Demonstrates how to initialize a QueryBuilder in Rust for filtering data. This snippet shows the basic setup for creating a query object.
```rust
// Multiple filter calls are AND-combined
let query = QueryBuilder::new("todos");
.filter_eq("done",
```
--------------------------------
### Setting Up Client Path
Source: https://jazz.tools/docs/getting-started/client-setup
This snippet demonstrates how to define and use a client path, likely for routing or resource management within the application.
```javascript
self.__next_f.push([1,"12:[\"$\",\"path\",null,{\"d\":\"$20\",\"fill\":\"#146AFF\"}]\n13:[\"$\",\"div\",null,{\"className\":\"flex-1\",\"children\":\"$undefined\"}]\n14:[\"$\",\"$L21\",null,{\"className\":\"p-2\",\"hideIfDisabled\":true}]\n15:[\"$\",\"$L22\",null,{\"className\":\"inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring hover:bg-fd-accent hover:text-fd-accent-foreground [\u0026_svg]:size-4.5 p-2\",\"children\":[\"$\",\"svg\",null,{\"ref\":\"$undefined\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":24,\"height\":24,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":2,\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"lucide lucide-panel-left\",\"aria-hidden\":\"true\",\"children\":[[\"$\",\"rect\",\"afitv7\",{\"width\":\"18\",\"height\":\"18\",\"x\":\"3\",\"y\":\"3\",\"rx\":\"2\"}],[\"$\",\"path\",\"fh3hqa\",{\"d\":\"M9 3v18\"},\"$undefined\"]}]}\\n"],"$undefined\n"])
```
--------------------------------
### Svelte Local First Auth Setup
Source: https://jazz.tools/docs/getting-started/client-setup
Set up Jazz in a Svelte application with local-first authentication. This example uses `LocalFirstAuth` to manage the secret and `JazzSvelteProvider`.
```svelte
{#if client}
{@render children()}
{/if}
```
--------------------------------
### Get Db Handle in Vue
Source: https://jazz.tools/docs/writing/writing-data
Use the `useDb` hook from `jazz-tools/vue` to obtain the database handle within a Vue component's setup script.
```typescript
```
--------------------------------
### List To-Dos via cURL
Source: https://jazz.tools/docs/install/typescript-server
Example cURL command to retrieve all to-do items using the GET API endpoint. Requires a bearer token.
```bash
curl http://localhost:3000/api/todos \
-H "Authorization: Bearer $TOKEN"
```
--------------------------------
### Define Permissions for Todos
Source: https://jazz.tools/llms-full.txt
Defines comprehensive permissions for the 'todos' collection, allowing all read, insert, update, and delete operations. This is a permissive setup for the quickstart.
```ts
import { schema as s } from "jazz-tools";
import { app } from "./schema.js";
export default s.definePermissions(app, ({ policy }) => {
policy.todos.allowRead.always();
policy.todos.allowInsert.always();
policy.todos.allowUpdate.always();
policy.todos.allowDelete.always();
});
```
--------------------------------
### Initialize Jazz Project
Source: https://jazz.tools/docs/install/client
Initialize a new Jazz project in your current directory. This sets up the necessary configuration files.
```bash
jazz init
```
--------------------------------
### Vue.js App Setup with Jazz Client
Source: https://jazz.tools/docs/install/client
This snippet demonstrates how to import and initialize the Jazz client and provider in a Vue.js application. Ensure you have the 'jazz-tools/vue' package installed.
```vue
```
--------------------------------
### Create Basic TypeScript Project
Source: https://jazz.tools/llms-full.txt
Use these commands to set up a basic TypeScript project directory and install Vite and TypeScript.
```bash
mkdir my-jazz-app && cd my-jazz-app
pnpm init
pnpm add vite typescript
```
--------------------------------
### Get Session and User ID (TypeScript)
Source: https://jazz.tools/docs/auth/sessions
Access the session and user ID directly from the database state. Useful for direct data access or initial state setup.
```typescript
const session = db.getAuthState().session;
const sessionUserId = session?.user_id ?? null;
```
--------------------------------
### JazzProvider Component Example
Source: https://jazz.tools/docs/auth/lifecycle
This snippet shows the structure of the `JazzProvider` component, which is responsible for managing authentication state and providing it to the application. It includes basic theme setup for light and dark modes.
```javascript
$L51
<
JazzProvider
$L54$L55$L56$L57$L58$L59
$L5a
$L5b
```
--------------------------------
### SolidJS Live Query Example
Source: https://jazz.tools/docs/reading/queries
Demonstrates how to set up a live query in SolidJS using Jazz Tools. This snippet fetches all todos based on a query.
```javascript
import { useAll } from "jazz-tools/solid"
import { app } from "../schema.js"
export function LiveQueryExample() {
const todos = useAll(() => ({ query: app.todos }));
return (
```
--------------------------------
### Import QuickstartItem Component
Source: https://jazz.tools/docs/install/client
Imports the QuickstartItem component from its local module. This is typically used to render individual quickstart items.
```javascript
import { QuickstartItem } from "./quickstart-item.js";
```
--------------------------------
### Example App.tsx
Source: https://jazz.tools/docs/recipes/auth/auth-provider-integration
This is a basic example of an App.tsx file.
```typescript
export function
```
--------------------------------
### Initialize New Project with pnpm
Source: https://jazz.tools/docs/install/typescript-server
Initialize a new project using pnpm. This command sets up the basic project structure and dependencies.
```bash
pnpm init
```
--------------------------------
### Permissions Schema Example
Source: https://jazz.tools/docs/auth/permissions
An example of a permissions schema structure written in TypeScript.
```typescript
7.07l1.71-1.71"}],"$undefined"}]}]}]}
```
--------------------------------
### Create and Navigate to Project Directory
Source: https://jazz.tools/docs/install/typescript-server
Use these commands to create a new project directory and then navigate into it. This is the first step in setting up your Jazz application.
```bash
mkdir my-jazz-app && cd my-jazz-app
```
--------------------------------
### Query Rows Example
Source: https://jazz.tools/docs/reading/includes-and-relations
Example of querying rows with a client and a specific query.
```javascript
let rows = client.query(query, None)
```
--------------------------------
### Client Configuration Example
Source: https://jazz.tools/docs/install/client
This snippet shows a basic client configuration, highlighting the 'appId' for identifying your application. Ensure you use the generated UUID for correct data namespacing.
```json
{
"appId": "YOUR_APP_UUID"
}
```