sveltekit-remote-functions

star 210

SvelteKit remote functions guidance. Use for command(), query(), form() patterns in .remote.ts files.

spences10 By spences10 schedule Updated 2/8/2026

name: sveltekit-remote-functions

IMPORTANT: Keep description on ONE line for Claude Code compatibility

prettier-ignore

description: SvelteKit remote functions guidance. Use for command(), query(), form() patterns in .remote.ts files.

SvelteKit Remote Functions

Quick Start

File naming: *.remote.ts for remote function files

Which function? One-time action → command() | Repeated reads → query() | Forms → form()

Example

// actions.remote.ts
import { command } from '$app/server';
import * as v from 'valibot';

export const delete_user = command(
    v.object({ id: v.string() }),
    async ({ id }) => {
        await db.users.delete(id);
        return { success: true };
    },
);

// Call from client: await delete_user({ id: '123' });

Reference Files

Notes

  • Remote functions execute on server when called from browser
  • Args/returns must be JSON-serializable
  • Schema validation via StandardSchemaV1 (Valibot/Zod)
  • getRequestEvent() available for cookies/headers access
  • Queries are cached - use .refresh() to get fresh data
  • No .remote files in src/lib/server/ - they won't work there
  • Last verified: 2025-12-19
Install via CLI
npx skills add https://github.com/spences10/svelte-claude-skills --skill sveltekit-remote-functions
Repository Details
star Stars 210
call_split Forks 20
navigation Branch main
article Path SKILL.md
More from Creator