pluv.io is in preview! Please wait for a v1.0.0 stable release before using this in production.

Create Client

Generally, it is recommended to use framework-specific bindings for your particular UI framework such as @pluv/react. However, if your selected framework isn't yet supported, you can create a framework-agnostic pluv.io client to add automatic type-safe real-time to any app.

Creating a PluvClient

Note: These examples assume that you've already created a backend pluv.io instance. Refer to the quickstart to learn more.

Install dependencies

# For the frontend
npm install @pluv/client

Define a frontend PluvClient

// frontend/io.ts

import { createClient } from "@pluv/client";
// Import the type from your PluvServer instance.
import { type AppPluvIO } from "server/io";

const client = createClient<AppPluvIO>({
    // Optional. Defaults to (room) => `/api/pluv/room/${room}`
    wsEndpoint: (room: string): string => {
        // Specify the ws endpoint to connect to 
        return `http://localhost:3000/api/room?room=${room}`;
    },
});

Next steps