example.config.toml 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188
  1. [info]
  2. url = "https://mint.thesimplekid.dev/"
  3. listen_host = "127.0.0.1"
  4. listen_port = 8085
  5. mnemonic = ""
  6. # input_fee_ppk = 0
  7. # enable_swagger_ui = false
  8. [info.quote_ttl]
  9. # Prefer explicit fields over inline tables for readability and ease of overrides
  10. mint_ttl = 600
  11. melt_ttl = 120
  12. [info.logging]
  13. # Where to output logs: "stdout", "file", or "both" (default: "both")
  14. # Note: "stdout" actually outputs to stderr (standard error stream)
  15. # output = "both"
  16. # Log level for console output (default: "info")
  17. # console_level = "info"
  18. # Log level for file output (default: "debug")
  19. # file_level = "debug"
  20. [mint_management_rpc]
  21. enabled = false
  22. # address = "127.0.0.1"
  23. # port = 8086
  24. #[prometheus]
  25. #enabled = true
  26. #address = "127.0.0.1"
  27. #port = 9090
  28. #
  29. [info.http_cache]
  30. # backend type: memory (default)
  31. backend = "memory"
  32. ttl = 60
  33. tti = 60
  34. # NOTE: If [mint_management_rpc] is enabled these values will only be used on first start up.
  35. # Further changes must be made through the rpc.
  36. [mint_info]
  37. # name = "cdk-mintd mutiney net mint"
  38. # Hex pubkey of mint
  39. # pubkey = ""
  40. # description = "These are not real sats for testing only"
  41. # description_long = "A longer mint for testing"
  42. # motd = "Hello world"
  43. # icon_url = "https://this-is-a-mint-icon-url.com/icon.png"
  44. # contact_email = "hello@cashu.me"
  45. # Nostr pubkey of mint (Hex)
  46. # contact_nostr_public_key = ""
  47. # tos_url = "https://example.com/terms-of-service"
  48. [database]
  49. # Database engine (sqlite/postgres) defaults to sqlite
  50. engine = "sqlite"
  51. # PostgreSQL configuration (when engine = "postgres")
  52. [database.postgres]
  53. # PostgreSQL connection URL
  54. # Can also be set via CDK_MINTD_POSTGRES_URL or CDK_MINTD_DATABASE_URL environment variables
  55. # Environment variables take precedence over config file settings
  56. url = "postgresql://user:password@localhost:5432/cdk_mint"
  57. # TLS mode: "disable", "prefer", "require" (optional, defaults to "disable")
  58. tls_mode = "disable"
  59. # Maximum number of connections in the pool (optional, defaults to 20)
  60. max_connections = 20
  61. # Connection timeout in seconds (optional, defaults to 10)
  62. connection_timeout_seconds = 10
  63. # Auth database configuration (optional, only used when auth is enabled)
  64. [auth_database.postgres]
  65. # PostgreSQL connection URL for authentication database
  66. # Can also be set via CDK_MINTD_AUTH_POSTGRES_URL environment variable
  67. # Environment variables take precedence over config file settings
  68. url = "postgresql://user:password@localhost:5432/cdk_mint_auth"
  69. # TLS mode: "disable", "prefer", "require" (optional, defaults to "disable")
  70. tls_mode = "disable"
  71. # Maximum number of connections in the pool (optional, defaults to 20)
  72. max_connections = 20
  73. # Connection timeout in seconds (optional, defaults to 10)
  74. connection_timeout_seconds = 10
  75. [ln]
  76. # Required ln backend `cln`, `lnd`, `fakewallet`, 'lnbits', 'ldknode'
  77. ln_backend = "fakewallet"
  78. # min_mint=1
  79. # max_mint=500000
  80. # min_melt=1
  81. # max_melt=500000
  82. [cln]
  83. rpc_path = ""
  84. fee_percent = 0.04
  85. reserve_fee_min = 4
  86. # [lnbits]
  87. # admin_api_key = ""
  88. # invoice_api_key = ""
  89. # lnbits_api = ""
  90. # Note: Only LNBits v1 API is supported (websocket-based)
  91. # [lnd]
  92. # address = "https://domain:port"
  93. # macaroon_file = ""
  94. # cert_file = ""
  95. # fee_percent=0.04
  96. # reserve_fee_min=4
  97. # [ldk_node]
  98. # fee_percent = 0.04
  99. # reserve_fee_min = 4
  100. # bitcoin_network = "signet" # mainnet, testnet, signet, regtest
  101. # chain_source_type = "esplora" # esplora, bitcoinrpc
  102. #
  103. # # Mutinynet configuration (recommended for testing)
  104. # esplora_url = "https://mutinynet.com/api"
  105. # gossip_source_type = "rgs" # Use RGS for better performance
  106. # rgs_url = "https://rgs.mutinynet.com/snapshot/0"
  107. # storage_dir_path = "~/.cdk-ldk-node/mutinynet"
  108. #
  109. # # Testnet configuration
  110. # # bitcoin_network = "testnet"
  111. # # esplora_url = "https://blockstream.info/testnet/api"
  112. # # rgs_url = "https://rapidsync.lightningdevkit.org/snapshot"
  113. # # storage_dir_path = "~/.cdk-ldk-node/testnet"
  114. #
  115. # # Mainnet configuration (CAUTION: Real Bitcoin!)
  116. # # bitcoin_network = "mainnet"
  117. # # esplora_url = "https://blockstream.info/api"
  118. # # rgs_url = "https://rapidsync.lightningdevkit.org/snapshot"
  119. # # storage_dir_path = "~/.cdk-ldk-node/mainnet"
  120. #
  121. # # Bitcoin RPC configuration (when chain_source_type = "bitcoinrpc")
  122. # bitcoind_rpc_host = "127.0.0.1"
  123. # bitcoind_rpc_port = 18443
  124. # bitcoind_rpc_user = "testuser"
  125. # bitcoind_rpc_password = "testpass"
  126. #
  127. # # Node configuration
  128. # ldk_node_host = "127.0.0.1"
  129. # ldk_node_port = 8090
  130. #
  131. # # Gossip source configuration
  132. # gossip_source_type = "p2p" # p2p (direct peer-to-peer) or rgs (rapid gossip sync)
  133. #
  134. # # Webserver configuration for LDK node management interface
  135. # webserver_host = "127.0.0.1" # Default: 127.0.0.1
  136. # webserver_port = 0 # 0 = auto-assign available port
  137. [fake_wallet]
  138. supported_units = ["sat"]
  139. fee_percent = 0.02
  140. reserve_fee_min = 1
  141. min_delay_time = 1
  142. max_delay_time = 3
  143. # [grpc_processor]
  144. # gRPC Payment Processor configuration
  145. # supported_units = ["sat"]
  146. # addr = "127.0.0.1"
  147. # port = 50051
  148. # tls_dir = "/path/to/tls"
  149. # [auth]
  150. # Set to true to enable authentication features (defaults to false)
  151. # auth_enabled = false
  152. # openid_discovery = "http://127.0.0.1:8080/realms/cdk-test-realm/.well-known/openid-configuration"
  153. # openid_client_id = "cashu-client"
  154. # mint_max_bat=50
  155. # Authentication settings for endpoints
  156. # Options: "clear", "blind", "none" (none = disabled)
  157. # mint = "blind"
  158. # get_mint_quote = "none"
  159. # check_mint_quote = "none"
  160. # melt = "none"
  161. # get_melt_quote = "none"
  162. # check_melt_quote = "none"
  163. # swap = "blind"
  164. # restore = "blind"
  165. # check_proof_state = "none"