Watt-Extra is an enterprise-ready runtime manager for Platformatic applications that provides production-grade capabilities including monitoring, compliance checking, caching, authentication, and integration with Infrastructure Control Center (ICC) services.
Watt-Extra wraps existing Platformatic applications (Service, Composer, Node, or Next.js) to enhance them with enterprise features without requiring any code changes. It acts as a transparent layer that:
- Monitors application performance and health metrics
- Enforces compliance policies and security rules
- Manages HTTP caching strategies based on ICC configuration
- Handles authentication and authorization flows
- Schedules cron jobs and periodic tasks
- Reports metadata and telemetry to control plane services
The runtime manager dynamically patches Platformatic configurations at startup to inject these capabilities while maintaining full compatibility with your existing applications.
None.
PLT_ICC_URL- Infrastructure Control Center URL for connecting to control plane services. When not set, Watt-Extra runs in standalone mode without ICC integrationPLT_APP_NAME- Unique identifier for your application instance. Optional whenPLT_ICC_URLis set - if not provided, it will be automatically determined from Kubernetes labels following these rules:- Uses
app.kubernetes.io/instancelabel first - Falls back to ReplicaSet naming convention (
{app-name}-{hash})
- Uses
PLT_APP_DIR- Application directory (defaults to current working directory)PLT_TEST_TOKEN- JWT token for authentication in non-Kubernetes environmentsPLT_LOG_LEVEL- Logging level for the applicationPLT_CACHE_CONFIG- HTTP caching configuration
Watt-Extra can run without connecting to an Infrastructure Control Center (ICC). When PLT_ICC_URL is not set:
- No ICC connection attempts are made
- All ICC-dependent plugins (alerts, compliance, metadata, scheduler) skip their operations
- The application runs with local configuration only
npm install @platformatic/watt-extraAdd a script to your package.json:
"scripts": {
"watt-extra": "watt-extra start"
}Then run:
npm run watt-extraWatt-Extra provides a command-line interface:
# Show help
watt-extra --help
# Start the runtime manager
watt-extra start
# Set log level
watt-extra start --log-level=debug
# Set ICC URL
watt-extra start --icc-url=http://icc-server:3000
# Set application name
watt-extra start --app-name=my-application
# Set application directory. This is useful for development and test
watt-extra start --app-dir=/path/to/application