{
  "PAGE_SIZE": {
    "description": "Rows of data per page",
    "default": "10",
    "value": "Integer"
  },
  "DASHBOARD_SERVER": {
    "description": "URL of dashboard server",
    "value": "Address"
  },
  "DASHBOARD_SESSION_KEY": {
    "description": "An application-level secret for user session tokens",
    "value": "String"
  },
  "DOMAIN": {
    "description": "Domain of server",
    "default": "unset",
    "value": "String"
  },
  "HOST": {
    "description": "IP or address web server listens on",
    "default": "localhost",
    "value": "IP address"
  },
  "PORT": {
    "description": "Port web server listens on",
    "default": "8000",
    "value": "Integer"
  },
  "HOME_PATH": {
    "description": "Alternative path for application home",
    "value": "String"
  },
  "DELETE_DELAY": {
    "description": "Cool-down time in days to delete accounts",
    "default": "7",
    "value": "Integer"
  },
  "APPLICATION_SERVER": {
    "description": "URL of application server",
    "value": "Address"
  },
  "APPLICATION_SERVER_TOKEN": {
    "description": "Secret shared between servers",
    "value": "String"
  },
  "BCRYPT_WORKLOAD_FACTOR": {
    "description": "Strength to protect passwords",
    "default": "10",
    "value": "Integer"
  },
  "DISABLE_METRICS": {
    "description": "Disable aggregated metrics",
    "default": "unset",
    "value": "Boolean"
  },
  "DISABLE_REGISTRATION": {
    "description": "Disable UI (not API) for registering",
    "default": "unset",
    "value": "Boolean"
  },
  "MAXIMUM_POST_DATA_LENGTH": {
    "description": "Largest POST payload accepted in bytes",
    "default": "2000000",
    "value": "Integer"
  },
  "MINIMUM_PASSWORD_LENGTH": {
    "description": "Shortest password length",
    "default": "6",
    "value": "Integer"
  },
  "MAXIMUM_PASSWORD_LENGTH": {
    "description": "Longest password length",
    "default": "50",
    "value": "Integer"
  },
  "MINIMUM_USERNAME_LENGTH": {
    "description": "Shortest username length",
    "default": "6",
    "value": "Integer"
  },
  "MAXIMUM_USERNAME_LENGTH": {
    "description": "Longest username length",
    "default": "50",
    "value": "Integer"
  },
  "MINIMUM_RESET_CODE_LENGTH": {
    "description": "Shortest reset code length",
    "default": "6",
    "value": "Integer"
  },
  "MAXIMUM_RESET_CODE_LENGTH": {
    "description": "Longest reset code length",
    "default": "50",
    "value": "Integer"
  },
  "REQUIRE_PROFILE": {
    "description": "Require registration information",
    "default": "unset",
    "value": "Integer"
  },
  "USER_PROFILE_FIELDS": {
    "description": "Information to collect at registration",
    "default": "contact-email,full-name",
    "value": "Profile property list"
  },
  "SESSION_VERIFICATION_DELAY": {
    "description": "Seconds before verifying a prolongued session",
    "default": "14400",
    "value": "Integer"
  },
  "CACHE_APPLICATION_SERVER_FILES": {
    "description": "Seconds to cache files from application server",
    "default": "60",
    "value": "Integer"
  },
  "CONTENT_SECURITY_POLICY": {
    "description": "Value for content-security-policy header",
    "value": "CSP header"
  },
  "HOT_RELOAD": {
    "description": "Reloads files every request",
    "value": "Boolean"
  },
  "INLINE_CSS": {
    "description": "Replaces linked CSS with embedded CSS",
    "value": "Boolean"
  },
  "INLINE_JS": {
    "description": "Replaces linked JS with embedded JS",
    "value": "Boolean"
  },
  "INLINE_SVG": {
    "description": "Replaces image SVG wtih embedded SVG",
    "value": "Boolean"
  }
}