Configuration
La configuration du module passe par la clé feathers dans nuxt.config.ts.
Exemple minimal embedded
ts
export default defineNuxtConfig({
modules: ['nuxt-feathers-zod'],
feathers: {
client: { mode: 'embedded' },
servicesDirs: ['services'],
transports: {
rest: { path: '/feathers', framework: 'express' },
websocket: { path: '/socket.io' }
},
auth: false,
swagger: false
}
})Express secure preset (Option A)
Le patch courant stabilise le mode embedded + Express. Les options fines sont portées par feathers.server.secure :
ts
export default defineNuxtConfig({
modules: ['nuxt-feathers-zod'],
feathers: {
client: { mode: 'embedded' },
transports: {
rest: { path: '/feathers', framework: 'express' },
websocket: { path: '/socket.io' }
},
server: {
enabled: true,
secureDefaults: true,
secure: {
cors: true,
compression: true,
helmet: true,
bodyParser: {
json: true,
urlencoded: true
},
serveStatic: false
}
}
}
})CLI équivalente :
bash
bunx nuxt-feathers-zod init embedded --framework express --cors true --compression true --helmet true --bodyParserJson true --bodyParserUrlencoded trueExemple minimal remote
ts
export default defineNuxtConfig({
modules: ['nuxt-feathers-zod'],
feathers: {
client: {
mode: 'remote',
remote: {
url: 'https://api.example.com',
transport: 'rest',
restPath: '/feathers',
websocketPath: '/socket.io'
}
}
}
})Options principales
feathers.client
mode:embedded | remotepinia: active l'intégration Feathers-Pinia côté clientplugins: plugins client additionnels
feathers.client.remote
url: URL du serveur Feathers distanttransport:rest | socketiorestPath: préfixe REST du serveur distantwebsocketPath: chemin Socket.IO du serveur distantservices: liste déclarative des services distantsauth: configuration auth distante
feathers.servicesDirs
Liste des répertoires à scanner pour les services embedded. La pratique recommandée reste :
ts
feathers: {
servicesDirs: ['services']
}feathers.transports
Used for embedded mode/server transports only. In remote mode, prefer feathers.client.remote.transport, restPath, and websocketPath.
rest.path: chemin REST local, par défaut/feathersrest.framework:express | koawebsocket.path: chemin Socket.IO local
feathers.server
enabled: active le serveur Feathers embeddedplugins: plugins serveur déclaratifsmodules: server modules additionnels
feathers.auth
false: pas d'auth Featherstrue: auth embedded ou remote selon le mode- en embedded, un service
userslocal est requis pour l'entité auth
feathers.keycloak
Configuration Keycloak côté client quand le projet utilise le mode payloadMode: 'keycloak' ou un flux SSO dédié.
feathers.templates
Contrôle les overrides de templates runtime.
