{
  "id": "rainfrog",
  "name": "rainfrog",
  "homepage": "https://github.com/achristmascarl/rainfrog",
  "description": "Database management TUI for PostgreSQL/MySQL/SQLite",
  "executables": [
    "rainfrog"
  ],
  "dotfiles": {
    "paths": [
      "[configHome]/rainfrog/",
      "[appData]/rainfrog/",
      "%LOCALAPPDATA%/rainfrog/config/"
    ],
    "secret": [
      "[configHome]/rainfrog/rainfrog_config.toml",
      "[appData]/rainfrog/rainfrog_config.toml",
      "%LOCALAPPDATA%/rainfrog/config/rainfrog_config.toml"
    ]
  },
  "commands": {
    "format": 1,
    "label": "Connect to a database",
    "description": "Open rainfrog on a PostgreSQL, MySQL, Oracle or SQLite database by URL or by separate connection parts. The password option is left out; rainfrog prompts or reads the saved config.",
    "quality": "ai-draft",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": true,
      "short_attached": false,
      "short_bundles": false
    },
    "source": [
      {
        "id": "readme",
        "kind": "help",
        "url": "https://github.com/achristmascarl/rainfrog#usage",
        "revision": "main 2026-10-27",
        "evidence": "Usage: rainfrog [OPTIONS] [COMMAND]\n  -M, --mouse <MOUSE_MODE>       Whether to enable mouse event support. [possible values: true, false]\n  -u, --url <URL>                Full connection URL for the database, e.g. postgres://username:password@localhost:5432/dbname\n      --username <USERNAME>      Username for database connection\n  -R, --reenter-password         Reenter the password for a saved database connection\n      --host <HOST>              Host for database connection (ex. localhost)\n      --port <PORT>              Port for database connection (ex. 5432)\n      --database <DATABASE>      Name of database for connection (ex. postgres)\n      --driver <DRIVER>          Driver for database connection (ex. postgres)\n      --ssl-required             Require an SSL/TLS connection (supported by PostgreSQL, MySQL, and Oracle)\n"
      }
    ],
    "field": [
      {
        "id": "url",
        "label": "Connection URL",
        "description": "A URL with a password in it lands in shell history.",
        "type": "string",
        "option": [
          "--url",
          "-u"
        ],
        "sources": [
          "readme"
        ]
      },
      {
        "id": "driver",
        "label": "Driver",
        "type": "string",
        "option": [
          "--driver"
        ],
        "suggestions": [
          {
            "value": "postgres",
            "label": "PostgreSQL"
          },
          {
            "value": "mysql",
            "label": "MySQL"
          },
          {
            "value": "sqlite",
            "label": "SQLite"
          }
        ],
        "sources": [
          "readme"
        ]
      },
      {
        "id": "host",
        "label": "Host",
        "type": "string",
        "option": [
          "--host"
        ],
        "sources": [
          "readme"
        ]
      },
      {
        "id": "port",
        "label": "Port",
        "type": "integer",
        "option": [
          "--port"
        ],
        "sources": [
          "readme"
        ]
      },
      {
        "id": "username",
        "label": "Username",
        "type": "string",
        "option": [
          "--username"
        ],
        "sources": [
          "readme"
        ]
      },
      {
        "id": "database",
        "label": "Database name",
        "type": "string",
        "option": [
          "--database"
        ],
        "sources": [
          "readme"
        ]
      },
      {
        "id": "ssl_required",
        "label": "Require SSL/TLS",
        "type": "boolean",
        "option": [
          "--ssl-required"
        ],
        "sources": [
          "readme"
        ]
      },
      {
        "id": "reenter_password",
        "label": "Re-enter saved password",
        "type": "boolean",
        "option": [
          "-R",
          "--reenter-password"
        ],
        "sources": [
          "readme"
        ]
      },
      {
        "id": "mouse",
        "label": "Mouse support",
        "type": "enum",
        "option": [
          "--mouse",
          "-M"
        ],
        "choices": [
          {
            "value": "true",
            "label": "On"
          },
          {
            "value": "false",
            "label": "Off"
          }
        ],
        "sources": [
          "readme"
        ]
      }
    ],
    "task": [
      {
        "id": "url",
        "label": "Connect by URL",
        "fields": [
          "url",
          "ssl_required"
        ],
        "required": [
          "url"
        ]
      },
      {
        "id": "parts",
        "label": "Connect by parts",
        "fields": [
          "driver",
          "host",
          "port",
          "username",
          "database",
          "ssl_required"
        ],
        "required": [
          "driver"
        ]
      }
    ],
    "group": [
      {
        "id": "basic",
        "label": "Basic",
        "fields": [
          "url",
          "driver",
          "host",
          "port",
          "username",
          "database"
        ]
      },
      {
        "id": "advanced",
        "label": "Advanced",
        "fields": [
          "ssl_required",
          "reenter_password",
          "mouse"
        ]
      }
    ]
  }
}
