{
  "id": "manim",
  "name": "Manim Community",
  "homepage": "https://docs.manim.community/en/stable/guides/configuration.html",
  "description": "An animation engine for explanatory math videos.",
  "executables": [
    "manim"
  ],
  "dotfiles": {
    "paths": [
      "~/.config/manim/manim.cfg",
      "%APPDATA%/Manim/manim.cfg"
    ],
    "secret": []
  },
  "commands": {
    "format": 1,
    "label": "manim",
    "description": "Render scenes from a Python file. Uses the default render command; renderer and advanced config flags are left out.",
    "quality": "ai-draft",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": true,
      "short_attached": true,
      "short_bundles": false
    },
    "source": [
      {
        "id": "docs",
        "kind": "manual",
        "url": "https://docs.manim.community/en/stable/guides/configuration.html",
        "revision": "v0.22.0",
        "evidence": "manim [OPTIONS] FILE [SCENES]\nmanim -qm file.py SceneOne\nAnother frequently used flag is -p (“preview”), which makes Manim\nopen the rendered artifact after rendering.\nmanim -sqh <file.py> SceneName\nmanim -o myscene --format=gif -n 0,10 -c WHITE <file.py> SceneName"
      }
    ],
    "field": [
      {
        "id": "file",
        "label": "Scene file",
        "type": "path",
        "position": 0,
        "path": {
          "kind": "file",
          "role": "input",
          "must_exist": true
        },
        "sources": [
          "docs"
        ]
      },
      {
        "id": "scenes",
        "label": "Scene names",
        "description": "Leave empty to be prompted or render all.",
        "type": "string",
        "position": 1,
        "multiple": true,
        "min": 0,
        "sources": [
          "docs"
        ]
      },
      {
        "id": "quality",
        "label": "Quality",
        "description": "l, m, h, p, k.",
        "type": "string",
        "option": [
          "-q"
        ],
        "suggestions": [
          {
            "value": "l",
            "label": "Low"
          },
          {
            "value": "m",
            "label": "Medium"
          },
          {
            "value": "h",
            "label": "High"
          }
        ],
        "sources": [
          "docs"
        ]
      },
      {
        "id": "preview",
        "label": "Preview after render",
        "type": "boolean",
        "option": [
          "-p"
        ],
        "sources": [
          "docs"
        ]
      },
      {
        "id": "last_frame",
        "label": "Last frame only",
        "type": "boolean",
        "option": [
          "-s"
        ],
        "sources": [
          "docs"
        ]
      },
      {
        "id": "output_file",
        "label": "Output file name",
        "type": "string",
        "option": [
          "-o"
        ],
        "sources": [
          "docs"
        ]
      },
      {
        "id": "format",
        "label": "Format",
        "type": "string",
        "option": [
          "--format"
        ],
        "suggestions": [
          {
            "value": "gif",
            "label": "GIF"
          }
        ],
        "sources": [
          "docs"
        ]
      },
      {
        "id": "background",
        "label": "Background color",
        "type": "string",
        "option": [
          "-c"
        ],
        "suggestions": [
          {
            "value": "WHITE",
            "label": "White"
          }
        ],
        "sources": [
          "docs"
        ]
      }
    ],
    "task": [
      {
        "id": "render",
        "label": "Render a scene",
        "fields": [
          "file",
          "scenes",
          "quality",
          "preview"
        ],
        "required": [
          "file"
        ]
      },
      {
        "id": "still",
        "label": "Render last frame",
        "set": {
          "last_frame": [
            true
          ]
        },
        "lock": [
          "last_frame"
        ],
        "fields": [
          "file",
          "scenes",
          "quality",
          "last_frame"
        ],
        "required": [
          "file"
        ]
      }
    ],
    "group": [
      {
        "id": "basic",
        "label": "Basic",
        "fields": [
          "file",
          "scenes",
          "quality",
          "preview",
          "last_frame"
        ]
      },
      {
        "id": "advanced",
        "label": "Advanced",
        "fields": [
          "output_file",
          "format",
          "background"
        ]
      }
    ]
  }
}
