Plasma v1.0.0 is now available

End-to-End Type Safety. Zero Codegen.

The most developer-friendly HTTP client for your full-stack applications. Bring your Zod schemas and get complete type-safety from client to server instantly.

client.ts
import { createHttpClient } from '@crm/plasma';
import { APP_ROUTES } from './routes';

export const client = createHttpClient({
  serverUrl: process.env.API_URL,
  routes: APP_ROUTES,
});

const [error, data] = await client.GET('get-users', {
  params: { role: 'admin' },
});

Type-Safe RPC

End-to-end type safety without the overhead. Define your routes once, use them everywhere with perfect autocompletion.

Zero Codegen

Stop generating types. Plasma infers everything directly from your route definitions and Zod schemas in real-time.

First-Class Zod

Native integration with Zod. Automatically validate and coerce query parameters and request payloads.

Interceptors

Powerful async interceptors for requests and responses. Easily manage auth tokens, logging, and global error handling.

Go-Style Errors

Say goodbye to try/catch blocks. Plasma returns [error, data] tuples for predictable and clean error handling.

Framework Agnostic

Built on standard Web APIs (fetch, Headers). Works seamlessly with Next.js, TanStack Start, Remix, or vanilla React.