Skip to main content

Nuxt

HttpRouter integrates with Nuxt server routes via Nitro and h3. Use toWebRequest from h3 to convert the incoming event to a standard Request.

1. Install

npm install @daiso-tech/core hono

2. Create the handler

// server/api/[...].ts
import {
HttpRouter,
HttpRes,
defaultHttpRouterAdapter,
} from "@daiso-tech/core/http-router";
import { defineEventHandler, toWebRequest } from "h3";

const router = new HttpRouter({ router: defaultHttpRouterAdapter });

router.endpoint({
url: "/api/hello",
method: "GET",
handler: async () => HttpRes.text("Hello from Nuxt!"),
});

export default defineEventHandler(async (event) => {
const request = toWebRequest(event);
return router.fetch(request);
});

File structure

.
├── server
│ └── api
│ └── [...].ts
├── package.json
└── nuxt.config.ts

3. Develop

npm run dev

4. Build

npm run build

Reference: Nuxt Server Routes