HTTP Router API 
The http router is a wrapper of a Nitro web server, with all the flexibility that entails. Great for server side rendering, websockets, custom API endpoints, etc...
Configuration Options 
type 
- Value: 'http'
name 
- Type: string
- Required: true
A unique identifier for the router.
TIP
The name of the router that the code is currently executing can be imported from vinxi/manifest.
import { routerName } from "vinxi/manifest";
export default eventHandler(() => {
  const serverManifest = getManifest(routerName);
  const clientManifest = getManifest("react-client");
});handler 
- Type: string
- Required: true
The entry point file for Nitro server handling HTTP requests.
base 
- Type: string
- Required: false
- Default value: '/'
The base URL path under which the client application will be served.
plugins 
- Type: () => Plugin[]
- Required: false
A function returning an array of Vite plugins to use during the build process.
Learn more about configuring Vite plugins
routes 
- Type: (router: RouterSchemaInput, app: AppOptions) => CompiledRouter
- Required: false
A function defining the routing logic or structure.
Learn more about Vinxi's file system routing.
middleware 
- Type: string
- Required: false
Path to server middleware to apply to the router.
worker 
- Type: boolean
- Required: false
- Default value: false
Configures the router to run its request-handling in a separate worker thread.
build 
- Type: boolean
- Required: false
- Default value: true
Include the router in the build process.
outDir 
- Type: string
- Required: false
The output directory for build artifacts.
root 
- Type: string
- Required: false
The root directory for resolving paths. Defaults to the application's root directory.
Example Configuration 
{
  name: "server",
  type: "http",
  handler: "./app/apiHandler.ts",
  base: "/api",
  worker: true,
  plugins: () => [ reactRefresh() ],
}