System Configuration
Global settings and configuration for the bonus system
๐
Environment
Environment
production
Global Store Config
{"type":"dynamodb","region":"eu-central-1","tableName":"bonus-system-stage"}โน๏ธEnvironment variables are configured at deployment time
๐พ
Available Store Types
๐พ
memoryIn-memory storage
Use case: Development, testing
๐ด
redisRedis-backed storage
Use case: Production, distributed systems
๐
dynamodbAWS DynamoDB
Use case: Production, AWS deployments
๐
jsonfileJSON file-based (read-only)
Use case: GitOps, static configs
๐
yamlfileYAML file-based (read-only)
Use case: GitOps, static configs
๐
Ledger Configuration
Ledgers manage financial transactions and bonus balances.
๐๏ธ
MongoDB LedgerFor persistent storage of transactions
๐ก๏ธ
Circuit BreakerEnabled for resilience
๐
Retry HelperAutomatic retry on transient failures
๐ฏ
Ledger RegistryRoutes operations by scope
Configuration Location:
src/lib/ledger/๐
Data Sources
Configure connections to external data sources
๐
MongoDBConnected
Primary database for tenant data and bonus instances.
src/lib/db/mongodb.js๐
KV BackendsAvailable
Key-value stores for caching and session management.
src/lib/storage/๐ข
Counter BackendsAvailable
Distributed counters for wagering progress and limits.
src/lib/counters/๐งฉ
Plugin Registry
Available plugins for extending bonus system functionality
๐ฏ
Fact Plugins
Extract facts from events
src/lib/factPlugins/๐
Bonus Plugins
Define bonus rules
src/lib/bonus/bonuses/๐
Wagering Plugins
Calculate wagering progress
src/lib/bonus/plugins/wageringPlugins/๐
Reward Plugins
Generate bonus rewards
src/lib/bonus/plugins/rewardPlugins/