TerrenoAppOptions
Configuration options for TerrenoApp.
Properties
accessControl?
optionalaccessControl?:AnyTerrenoAccess
RBAC access controller injected into model routers and /auth/me enrichment.
arrayLimit?
optionalarrayLimit?:number
Maximum number of array items in query parameters (default: 200)
authOptions?
optionalauthOptions?:AuthOptions
Authentication configuration options
beforeJsonSetup?
optionalbeforeJsonSetup?: (app) =>void
Runs after CORS and before the addMiddleware chain and JSON body parsing.
Use to attach early middleware via app.use(...) before JSON parsing.
Parameters
app
Application
Returns
void
configureApp?
optionalconfigureApp?:AddRoutes
Invoked after registered plugins/model routers and before /auth/me.
Receives the Express app and OpenAPI bundle for modelRouter / createOpenApiBuilder wiring.
corsOrigin?
optionalcorsOrigin?:CorsOrigin
CORS origin configuration (default: "*")
githubAuth?
optionalgithubAuth?:GitHubAuthOptions
GitHub OAuth configuration (enables GitHub authentication if provided)
loggingOptions?
optionalloggingOptions?:LoggingOptions
Logging configuration options
logRequests?
optionallogRequests?:boolean
Whether to log all incoming requests (default: true)
realtime?
optionalrealtime?:boolean|RealtimeAppOptions
Real-time sync configuration. When provided, Socket.io and MongoDB change streams are set up automatically — no need to register RealtimeApp as a separate plugin.
Set to true for defaults, or pass a RealtimeAppOptions object for full control.
sentryOptions?
optionalsentryOptions?:BunOptions
Sentry configuration options
skipListen?
optionalskipListen?:boolean
Skip calling app.listen() in start() method (useful for testing)
userModel
userModel:
UserModel
Mongoose User model with passport-local-mongoose plugin