Skip to content
Pitlane

@pitlane/dev

The remix() Vite plugin — Remix 3 build orchestration, the clientEntry() hydration transform, dev serving through the app's fetch handler, and a preview server, for any Vite or Vite+ project.

Interfaces

RemixPluginOptions

Properties

clientEntry?
ts
optional clientEntry?: string | false;

Client entry module, used as the client environment's build input. Pass false to disable the client environment entirely (fully server-rendered apps with no hydration).

Default
ts
"app/entry.browser"
serverEntry?
ts
optional serverEntry?: string;

Server entry module, built as dist/ssr/index.js. Must default-export a fetch handler: an object exposing fetch(request: Request): Response | Promise<Response>, e.g. a createRouter() router.

Default
ts
"app/entry.server"
serverEnvironments?
ts
optional serverEnvironments?: string[];

Environment names the clientEntry() transform treats as "server". In these environments the transform resolves the client chunk URL via a ?assets=client import.

Default
ts
["ssr"]
serverHandler?
ts
optional serverHandler?: boolean;

Serve dev-server requests through the server entry's fetch handler. Set to false when another plugin owns dev-time request handling — e.g. @cloudflare/vite-plugin, @netlify/vite-plugin, or nitro/vite.

Default
ts
true

Functions

remix()

ts
function remix(options?): PluginOption;

Wires Remix 3 into a Vite or Vite+ project: multi-environment build orchestration (dist/ssr + dist/client), the clientEntry(import.meta.url, …) hydration transform, dev serving through the app's fetch handler, and a preview server for the production build.

Platform-agnostic by design: deploy targets compose alongside it in the plugin array (@cloudflare/vite-plugin, @netlify/vite-plugin, nitro/vite), or the built fetch handler runs directly on Node, Bun, and Deno.

Parameters

options?

RemixPluginOptions = {}

Returns

PluginOption