{
  "name": "speedtest",
  "kind": "registry",
  "title": "Speedtest",
  "description": "Run an internet speed test and watch it fill in: download and upload as they happen, ping and jitter, the server and your provider. Every run is kept in a history with a trend.",
  "version": "0.1.0",
  "icon": {
    "tile": {
      "glyph": "󰓅",
      "bg": "violet"
    }
  },
  "author": "pal",
  "spec": "github:zcag/pal/extensions/speedtest@v0.9.1",
  "source": "https://github.com/zcag/pal/tree/HEAD/extensions/speedtest",
  "commit": "63287e180ce349dac3aa87c68ce4c80bc42ad409",
  "manifest": {
    "name": "speedtest",
    "title": "Speedtest",
    "description": "Run an internet speed test and watch it fill in: download and upload as they happen, ping and jitter, the server and your provider. Every run is kept in a history with a trend.",
    "version": "0.1.0",
    "icon": {
      "tile": {
        "glyph": "󰓅",
        "bg": "violet"
      }
    },
    "author": "pal",
    "repo": "bundled",
    "license": "MIT",
    "settings": [
      {
        "kind": "select",
        "id": "tool",
        "label": "Tool",
        "description": "Which CLI runs the test. Auto takes Speedtest by Ookla (the only one that reports progress), else speedtest-cli, else fast. `speedtest` on PATH is told apart by its --version.",
        "options": [
          {
            "id": "auto",
            "title": "Auto (Ookla, speedtest-cli, fast)"
          },
          {
            "id": "ookla",
            "title": "Speedtest by Ookla (speedtest)"
          },
          {
            "id": "speedtest-cli",
            "title": "speedtest-cli (Python)"
          },
          {
            "id": "fast",
            "title": "fast (Netflix, fast-cli)"
          }
        ],
        "default": "auto"
      },
      {
        "kind": "text",
        "id": "server",
        "label": "Server id",
        "description": "A speedtest.net server id to test against (`speedtest -L` lists nearby ones); empty picks the nearest. Ignored by fast.",
        "placeholder": "nearest",
        "default": ""
      },
      {
        "kind": "number",
        "id": "keep",
        "label": "Runs to keep",
        "description": "How many finished runs the history holds.",
        "min": 1,
        "max": 200,
        "default": 30
      }
    ],
    "store": {
      "tagline": "An internet speed test you can watch, with a history",
      "category": "system",
      "features": [
        "Uses the speed test tool you have: Speedtest by Ookla, speedtest-cli or fast, and says how to install one",
        "Starts only when you press `enter`; `enter` again stops it",
        "Live download and upload bars with the speed, ping and jitter, the server and your provider",
        "`cmd+enter` copies the result as one line, `cmd+o` opens Ookla's result page",
        "`cmd+h` shows every past run and a trend of the last twenty"
      ],
      "permissions": [
        "network"
      ],
      "platforms": [
        "macos",
        "linux"
      ],
      "screenshots": [
        {
          "file": "1-idle.png",
          "caption": "Opened: the tool found; nothing runs until Enter"
        },
        {
          "file": "2-running.png",
          "caption": "Downloading: the bar fills with Ookla's progress, the figure moves with it"
        },
        {
          "file": "3-done.png",
          "caption": "Done: both figures, ping and jitter, the server and the ISP"
        },
        {
          "file": "4-history.png",
          "caption": "History: the runs, newest first"
        },
        {
          "file": "5-trend.png",
          "caption": "The trend: the last runs as bars, download in blue and upload in green"
        },
        {
          "file": "6-no-tool.png",
          "caption": "Nothing installed: the three ways to get a tool"
        }
      ],
      "actions": [
        {
          "title": "Start the test",
          "description": "Runs the tool; while it runs the same key stops it.",
          "keys": "enter"
        },
        {
          "title": "Copy result",
          "description": "Down, up, ping and jitter, the server and the ISP, on one line.",
          "keys": "cmd+enter"
        },
        {
          "title": "Open the result page",
          "description": "Speedtest by Ookla only.",
          "keys": "cmd+o"
        },
        {
          "title": "History",
          "keys": "cmd+h"
        },
        {
          "title": "Remove a run",
          "description": "In the history.",
          "keys": "cmd+d"
        }
      ]
    },
    "palettes": {
      "speedtest": {
        "title": "Speedtest",
        "kind": "view",
        "on": [
          "show"
        ],
        "description": "The last result and the tool found; Enter runs a test and the view follows it live; Enter again stops it.",
        "keys": [
          {
            "keys": "enter",
            "title": "Start the test (stop it while it runs)"
          },
          {
            "keys": "cmd+enter",
            "title": "Copy the result"
          },
          {
            "keys": "cmd+o",
            "title": "Open the result page (Ookla)"
          },
          {
            "keys": "cmd+h",
            "title": "History"
          }
        ]
      },
      "history": {
        "title": "Speedtest History",
        "kind": "live",
        "description": "Finished runs, newest first, with a Trend row that draws the last twenty as bars.",
        "keys": [
          {
            "keys": "enter",
            "title": "Copy the run (on Trend: show the bars)"
          },
          {
            "keys": "cmd+o",
            "title": "Open the result page"
          },
          {
            "keys": "cmd+d",
            "title": "Remove the run"
          }
        ]
      }
    }
  },
  "playable": false,
  "updated_at": "2026-09-30T01:45:08Z",
  "url": "https://pal.cagdas.io/extensions/speedtest",
  "tagline": "An internet speed test you can watch, with a history",
  "category": "system",
  "screenshots": [
    "https://pal.cagdas.io/extensions/speedtest/screenshots/1-idle-dark.png",
    "https://pal.cagdas.io/extensions/speedtest/screenshots/1-idle.png",
    "https://pal.cagdas.io/extensions/speedtest/screenshots/2-running-dark.png",
    "https://pal.cagdas.io/extensions/speedtest/screenshots/2-running.png",
    "https://pal.cagdas.io/extensions/speedtest/screenshots/3-done-dark.png",
    "https://pal.cagdas.io/extensions/speedtest/screenshots/3-done.png",
    "https://pal.cagdas.io/extensions/speedtest/screenshots/4-history-dark.png",
    "https://pal.cagdas.io/extensions/speedtest/screenshots/4-history.png",
    "https://pal.cagdas.io/extensions/speedtest/screenshots/5-trend-dark.png",
    "https://pal.cagdas.io/extensions/speedtest/screenshots/5-trend.png",
    "https://pal.cagdas.io/extensions/speedtest/screenshots/6-no-tool-dark.png",
    "https://pal.cagdas.io/extensions/speedtest/screenshots/6-no-tool.png"
  ],
  "panel_screenshots": [
    "https://pal.cagdas.io/extensions/speedtest/screenshots/1-idle.png",
    "https://pal.cagdas.io/extensions/speedtest/screenshots/2-running.png",
    "https://pal.cagdas.io/extensions/speedtest/screenshots/3-done.png",
    "https://pal.cagdas.io/extensions/speedtest/screenshots/4-history.png",
    "https://pal.cagdas.io/extensions/speedtest/screenshots/5-trend.png",
    "https://pal.cagdas.io/extensions/speedtest/screenshots/6-no-tool.png"
  ],
  "bar_screenshots": [],
  "panel_screenshots_dark": [
    "https://pal.cagdas.io/extensions/speedtest/screenshots/1-idle-dark.png",
    "https://pal.cagdas.io/extensions/speedtest/screenshots/2-running-dark.png",
    "https://pal.cagdas.io/extensions/speedtest/screenshots/3-done-dark.png",
    "https://pal.cagdas.io/extensions/speedtest/screenshots/4-history-dark.png",
    "https://pal.cagdas.io/extensions/speedtest/screenshots/5-trend-dark.png",
    "https://pal.cagdas.io/extensions/speedtest/screenshots/6-no-tool-dark.png"
  ],
  "bar_screenshots_dark": [],
  "has_bar": false,
  "bar_items": [],
  "has_links": false,
  "links": [],
  "multi": false,
  "has_readme": true
}
