example.config.toml 5.5 KB

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