> ## Documentation Index
> Fetch the complete documentation index at: https://docs.raykoi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Svelte

> useRaykoiForm — bind the stores directly.

```bash theme={null}
npm install @raykoi/sdk
```

No `RaykoiFieldError`/`RaykoiStatus` components for Svelte — a compiled component is tied to the compiler version that built it, and Svelte 4/5 runtimes aren't binary-compatible. Bind the stores directly, auto-subscribed with the `$` prefix.

```javascript theme={null}
import { useRaykoiForm } from '@raykoi/sdk/svelte';

const { submit, submitting, fieldErrors, status } = useRaykoiForm("YOUR_PUBLIC_ID");
```

```svelte theme={null}
<form on:submit={submit}>
  <input name="email" type="email" />
  {#if $fieldErrors.email}<p>{$fieldErrors.email}</p>{/if}
  <button disabled={$submitting}>{$submitting ? 'Sending…' : 'Submit'}</button>
  {#if $status}<p>{$status.message}</p>{/if}
</form>
```

<Info>
  Using SvelteKit? See [Meta-Frameworks](/integrations/meta-frameworks) — SSR needs one extra step.
</Info>
