mongodb: uri: mongodb://localhost:27017/ database: grain auth: enabled: false # Enable or disable AUTH handling relay_url: "wss://relay.example.com/" # Specify the relay URL server: port: :8181 read_timeout: 10 # in seconds write_timeout: 10 # in seconds idle_timeout: 120 # in seconds max_connections: 100 max_subscriptions_per_client: 10 resource_limits: cpu_cores: 2 # Limit the number of CPU cores the application can use memory_mb: 1024 # Cap the maximum amount of RAM in MB the application can use heap_size_mb: 512 # Set a limit on the Go garbage collector's heap size in MB max_goroutines: 100 # Limit the maximum number of concurrently running Go routines rate_limit: ws_limit: 100 # WebSocket messages per second ws_burst: 200 # Allowed burst of WebSocket messages event_limit: 50 # Events per second event_burst: 100 # Allowed burst of events req_limit: 50 # HTTP requests per second req_burst: 100 # Allowed burst of HTTP requests max_event_size: 51200 # Maximum size of an event in bytes # Size limits for specific event kinds kind_size_limits: - kind: 0 max_size: 10240 # Maximum size in bytes for kind 0 events - kind: 1 max_size: 25600 # Maximum size in bytes for kind 1 events # Rate limits for different event categories category_limits: ephemeral: kind: 0 limit: 100 # Events per second burst: 200 # Allowed burst parameterized_replaceable: kind: 0 limit: 5 burst: 10 regular: kind: 0 limit: 25 burst: 50 replaceable: kind: 0 limit: 10 burst: 20 # Rate limits for specific event kinds kind_limits: - kind: 0 limit: 1 # Events per second burst: 5 # Allowed burst - kind: 1 limit: 25 burst: 50 - kind: 3 limit: 25 burst: 50 pubkey_whitelist: enabled: false pubkeys: [] # List of allowed public keys npubs: [] # List of allowed npubs (Nostr public keys in bech32 format) kind_whitelist: enabled: false kinds: [] # List of allowed event kinds domain_whitelist: enabled: false domains: [] # List of allowed domains blacklist: #Removing a pubkey from the Blacklist requires a hard restart; Blacklist overides the Whitelist enabled: true permanent_ban_words: [] # Words that trigger a permanent ban temp_ban_words: # Words that trigger a temporary ban - crypto - web3 - airdrop max_temp_bans: 3 # Number of temporary bans before a permanent ban temp_ban_duration: 3600 # Temporary ban duration in seconds permanent_blacklist_pubkeys: # List of permanently banned public keys - db0c9b8acd6101adb9b281c5321f98f6eebb33c5719d230ed1870997538a9765 permanent_blacklist_npubs: # List of permanently banned npubs - npub1x0r5gflnk2mn6h3c70nvnywpy2j46gzqwg6k7uw6fxswyz0md9qqnhshtn