Core Plugins
BSB ships with sensible default plugins for configuration, events, and observability. These are part of the framework and work out of the box.
Built-in Plugins
These core plugins are included with BSB and enabled by default. They provide a solid foundation for development and simple deployments.
config-default
YAML-based configuration with environment variable support and validation.
- Loads from sec-config.yaml
- Environment variable overrides
- Zod schema validation
- Plugin-specific config sections
events-default
In-memory event bus for single-process deployments and development.
- Fire-and-forget events
- Request-response (returnable)
- Broadcast to all listeners
- Stream support
observable-default
Unified observability plugin with logging, metrics, and tracing support.
- Colored console logging
- Log levels (debug, info, warn, error)
- Metrics tracking (counters, gauges)
- Distributed tracing
When to Replace Core Plugins
The default plugins are designed for development and simple single-container deployments. You should replace them when:
- config-default - Replace when you need dynamic configuration or secrets management. Use config-consul, config-etcd, or config-vault.
- events-default - Replace when you need multiple containers/processes to communicate. Use events-rabbitmq, events-kafka, or events-redis.
- observable-default - Replace when you need production-grade observability. Use observable-pino, observable-winston, observable-opentelemetry, or observable-graylog for centralized logging and monitoring.
Check plugins.bsbcode.dev for available plugins.