database: sqlite:/app/data/maubot.db
crypto_database: default

database_opts:
  min_size: 1
  max_size: 10

plugin_directories:
  upload: /app/data/plugins
  load:
    - /app/data/plugins
  trash: /app/data/trash

plugin_databases:
  sqlite: /app/data/dbs
  postgres: null
  postgres_max_conns_per_plugin: 3
  postgres_opts: {}

server:
  hostname: 127.0.0.1
  port: 3001
  public_url: https://example.com
  ui_base_path: /
  plugin_base_path: /_matrix/maubot/plugin/
  override_resource_path: /app/code/frontend
  unshared_secret: generate

homeservers: {}

admins:
  root: ""

api_features:
  login: true
  plugin: true
  plugin_upload: true
  instance: true
  instance_database: true
  client: true
  client_proxy: true
  client_auth: true
  dev_open: true
  log: true

logging:
  version: 1
  formatters:
    colored:
      (): maubot.lib.color_log.ColorFormatter
      format: "[%(asctime)s] [%(levelname)s@%(name)s] %(message)s"
    normal:
      format: "[%(asctime)s] [%(levelname)s@%(name)s] %(message)s"
  handlers:
    file:
      class: logging.handlers.RotatingFileHandler
      formatter: normal
      filename: /app/data/logs/maubot.log
      maxBytes: 10485760
      backupCount: 10
    console:
      class: logging.StreamHandler
      formatter: colored
  loggers:
    maubot:
      level: INFO
    mau:
      level: INFO
    aiohttp:
      level: INFO
  root:
    level: INFO
    handlers:
      - file
      - console
