Framework
Config
Interface: Config
Properties
| Property | Type | Description |
|---|---|---|
excludePaths? | string[] | - |
experimental? | { buildDirectory: BuildDirectoryOption; incrementalBuilds: boolean; } | - |
experimental.buildDirectory? | BuildDirectoryOption | Custom build output directory. Can be a static string (bypasses mode logic) or a function that receives context with the current mode for dynamic resolution. Examples // Static string buildDirectory: 'dist' // Dynamic function buildDirectory: (ctx) => dist/${ctx.mode}`` |
experimental.incrementalBuilds? | boolean | - |
flashcore? | { keyv: unknown; namespaceSeparator: string; } | - |
flashcore.keyv? | unknown | - |
flashcore.namespaceSeparator? | string | Separator placed between namespace and key when composing Flashcore keys. Defaults to "/". |
logger? | { colorMap: boolean; drain: LogDrain; enabled: boolean; files: FileOutputConfig[]; level: LogLevel; timestamp: TimestampFormat; } | - |
logger.colorMap? | boolean | Generate companion .colormap files for file-based log outputs. These files record ANSI escape code positions, allowing colors to be reconstructed. Individual file configs can override this setting. Default: false |
logger.drain? | LogDrain | - |
logger.enabled? | boolean | - |
logger.files? | FileOutputConfig[] | File-based log outputs. In development mode, defaults to logs/dev.log if undefined. |
logger.level? | LogLevel | - |
logger.timestamp? | TimestampFormat | Global timestamp format for all log outputs. Default: false (no timestamps) |
namespace? | string | Portal namespace for plugin routes. If omitted, inferred from package name: - @robojs/discord → 'discord' - @robojs/server → 'server' - robo-plugin-analytics → 'analytics' |
plugins? | Plugin[] | - |
portal? | { keepRegistered: boolean; loading: "eager" | "lazy"; } | - |
portal.keepRegistered? | boolean | When true, disabling a module or component won't unregister commands, events, etc. |
portal.loading? | "eager" | "lazy" | Handler loading strategy. - 'eager': Import all handlers at startup (faster runtime, slower startup) - 'lazy': Import handlers on first access (faster startup, slower first access) Defaults to 'eager' in production, 'lazy' in development. |
roboplay? | { node: "18" | "20" | "latest"; } | - |
roboplay.node? | "18" | "20" | "latest" | - |
seed? | SeedHookConfig | Configure seed helpers that generate starter files and environment values. |
timeouts? | { lifecycle: number; } | - |
timeouts.lifecycle? | number | - |
type? | "plugin" | "robo" | - |
updateCheckInterval? | number | How often to check for updates to Robo.js in seconds. Default: 1 hour |
watcher? | { commands: string[]; ignore: string[]; } | - |
watcher.commands? | string[] | Shell commands to spawn as companion processes during --watch mode. Each command runs once when the watcher starts and is killed on exit. |
watcher.ignore? | string[] | - |
