Embedded mode
This page replaces the former navigation-only placeholder with a practical developer reference for the embedded Feathers server inside Nitro. It explains the option, shows how to configure it in nuxt.config.ts, and gives a minimal usage example.
Purpose
The embedded feathers server inside nitro helps keep the Nuxt module configuration, Feathers runtime, generated services, TypeScript client and CLI workflow aligned.
When to use this option
Use this page when you need to:
- configure the embedded Feathers server inside Nitro;
- document the decision in a starter or application;
- validate the setup with a CLI command;
- avoid drift between configuration, generated files and runtime behavior.
Configuration example
ts
// nuxt.config.ts
export default defineNuxtConfig({
modules: ['nuxt-feathers-zod'],
feathers: {
client: { mode: 'embedded', pinia: true },
server: { enabled: true, secureDefaults: true },
transports: {
rest: { path: '/feathers', framework: 'express' },
websocket: { path: '/socket.io' },
},
servicesDirs: ['services'],
}
})CLI example
bash
bunx nuxt-feathers-zod init embedded --framework express --restPath /feathers --forceRuntime example
ts
const service = useService('messages')
const result = await service.find({
query: {
$limit: 10,
$sort: { createdAt: -1 },
},
})Practical advice
- Keep runtime-affecting options explicit in
nuxt.config.ts. - Prefer CLI-generated services so manifests and generated types stay synchronized.
- Run
bunx nuxt-feathers-zod doctorafter structural changes. - Use
--drybefore write operations on an existing project.
