{
  "name": "maps",
  "kind": "registry",
  "title": "Maps",
  "description": "Search places and get directions in Google Maps or Apple Maps without leaving the keyboard. Type a route like `home \u003e work`, keep saved places, and add a Places API key for autocomplete.",
  "version": "0.1.0",
  "icon": {
    "tile": {
      "glyph": "󰗵",
      "bg": "green"
    }
  },
  "author": "pal",
  "spec": "github:zcag/pal/extensions/maps@v0.9.1",
  "source": "https://github.com/zcag/pal/tree/HEAD/extensions/maps",
  "commit": "63287e180ce349dac3aa87c68ce4c80bc42ad409",
  "manifest": {
    "name": "maps",
    "title": "Maps",
    "description": "Search places and get directions in Google Maps or Apple Maps without leaving the keyboard. Type a route like `home \u003e work`, keep saved places, and add a Places API key for autocomplete.",
    "version": "0.1.0",
    "icon": {
      "tile": {
        "glyph": "󰗵",
        "bg": "green"
      }
    },
    "author": "pal",
    "repo": "bundled",
    "license": "MIT",
    "settings": [
      {
        "kind": "select",
        "id": "app",
        "label": "Open in",
        "description": "Which app the rows open. Apple Maps is macOS only (a `maps://` url); Copy link always copies a web url.",
        "options": [
          {
            "id": "google",
            "title": "Google Maps (the browser)"
          },
          {
            "id": "apple",
            "title": "Apple Maps"
          }
        ],
        "default": "google"
      },
      {
        "kind": "text",
        "id": "home",
        "label": "Home",
        "description": "An address or place name; the Home row and the “from home” directions.",
        "placeholder": "Moda, Kadıköy, İstanbul",
        "default": ""
      },
      {
        "kind": "text",
        "id": "work",
        "label": "Work",
        "description": "Likewise; with both set the empty palette lists the commute both ways.",
        "placeholder": "Levent, İstanbul",
        "default": ""
      },
      {
        "kind": "list",
        "id": "places",
        "label": "Saved places",
        "description": "One per line as `Name = address` (a line without `=` is both). Each is a row: open, directions to it, copy the address.",
        "placeholder": "Gym = Kadıköy Sports Hall, İstanbul",
        "default": []
      },
      {
        "kind": "secret",
        "id": "api_key",
        "label": "Places API key",
        "description": "Optional. A Google Cloud key with Places API (New) enabled: place predictions appear under the rows as you type (autocomplete requests are billed by Google past the monthly free credit). Empty: nothing is fetched, the urls need no key.",
        "placeholder": "AIza…",
        "default": ""
      }
    ],
    "store": {
      "tagline": "Places and directions from the panel, no key needed",
      "category": "productivity",
      "features": [
        "Type a place: search it, or get directions from here, from home or from work",
        "Routes typed as you say them: `home \u003e work`, `istanbul to ankara`; the way back as the second row",
        "Pick driving, transit, walking or cycling (`tab` cycles)",
        "Home, work, your commute and every saved place before you type, with Copy address and Copy link",
        "Opens in Google Maps or Apple Maps, your choice; autocomplete with a Places API key",
        "`go: coffee` or `maps: home \u003e work` at the root answers inline"
      ],
      "permissions": [
        "network"
      ],
      "platforms": [
        "macos",
        "linux"
      ],
      "screenshots": [
        {
          "file": "1-places.png",
          "caption": "Nothing typed: Home, Work, the commute both ways and the saved places"
        },
        {
          "file": "2-search.png",
          "caption": "kadıköy typed: Search, directions from here, home and work, a saved place that matches"
        },
        {
          "file": "3-route.png",
          "caption": "home \u003e work: the route and its reverse, walking chosen as the mode"
        },
        {
          "file": "4-autocomplete.png",
          "caption": "With a Places API key: predictions under the rows"
        },
        {
          "file": "5-actions.png",
          "caption": "What a place can do: open, directions from here, from home, from work, copy the address or the link"
        }
      ],
      "actions": [
        {
          "title": "Open",
          "description": "The place in the chosen app; on a route row, the directions.",
          "keys": "enter"
        },
        {
          "title": "Directions from here",
          "description": "From the current location to the place.",
          "keys": "cmd+enter"
        },
        {
          "title": "Directions from home",
          "keys": "cmd+h"
        },
        {
          "title": "Directions from work",
          "keys": "cmd+w"
        },
        {
          "title": "Copy address",
          "keys": "cmd+c"
        },
        {
          "title": "Copy link",
          "description": "The web url of what Enter would open.",
          "keys": "cmd+l"
        },
        {
          "title": "Open in the other app",
          "description": "Apple Maps when Google is chosen, and the other way.",
          "keys": "cmd+shift+o"
        }
      ]
    },
    "palettes": {
      "maps": {
        "title": "Maps",
        "kind": "input",
        "inline": true,
        "match": "^\\s*(?:maps?|go)\\s*:\\s*\\S",
        "description": "Type a place or a route (`home \u003e work`); the filter is the travel mode. Nothing typed lists home, work, the commute and the saved places. `maps:` or `go:` at the root answers inline.",
        "keys": [
          {
            "keys": "enter",
            "title": "Open the place or the route"
          },
          {
            "keys": "cmd+enter",
            "title": "Directions from here"
          },
          {
            "keys": "cmd+h",
            "title": "Directions from home"
          },
          {
            "keys": "cmd+w",
            "title": "Directions from work"
          },
          {
            "keys": "cmd+c",
            "title": "Copy the address"
          },
          {
            "keys": "cmd+l",
            "title": "Copy the link"
          },
          {
            "keys": "cmd+shift+o",
            "title": "Open in the other app"
          },
          {
            "keys": "tab",
            "title": "Next travel mode"
          }
        ]
      }
    }
  },
  "playable": false,
  "updated_at": "2026-09-30T01:45:08Z",
  "url": "https://pal.cagdas.io/extensions/maps",
  "tagline": "Places and directions from the panel, no key needed",
  "category": "productivity",
  "screenshots": [
    "https://pal.cagdas.io/extensions/maps/screenshots/1-places-dark.png",
    "https://pal.cagdas.io/extensions/maps/screenshots/1-places.png",
    "https://pal.cagdas.io/extensions/maps/screenshots/2-search-dark.png",
    "https://pal.cagdas.io/extensions/maps/screenshots/2-search.png",
    "https://pal.cagdas.io/extensions/maps/screenshots/3-route-dark.png",
    "https://pal.cagdas.io/extensions/maps/screenshots/3-route.png",
    "https://pal.cagdas.io/extensions/maps/screenshots/4-autocomplete-dark.png",
    "https://pal.cagdas.io/extensions/maps/screenshots/4-autocomplete.png",
    "https://pal.cagdas.io/extensions/maps/screenshots/5-actions-dark.png",
    "https://pal.cagdas.io/extensions/maps/screenshots/5-actions.png"
  ],
  "panel_screenshots": [
    "https://pal.cagdas.io/extensions/maps/screenshots/1-places.png",
    "https://pal.cagdas.io/extensions/maps/screenshots/2-search.png",
    "https://pal.cagdas.io/extensions/maps/screenshots/3-route.png",
    "https://pal.cagdas.io/extensions/maps/screenshots/4-autocomplete.png",
    "https://pal.cagdas.io/extensions/maps/screenshots/5-actions.png"
  ],
  "bar_screenshots": [],
  "panel_screenshots_dark": [
    "https://pal.cagdas.io/extensions/maps/screenshots/1-places-dark.png",
    "https://pal.cagdas.io/extensions/maps/screenshots/2-search-dark.png",
    "https://pal.cagdas.io/extensions/maps/screenshots/3-route-dark.png",
    "https://pal.cagdas.io/extensions/maps/screenshots/4-autocomplete-dark.png",
    "https://pal.cagdas.io/extensions/maps/screenshots/5-actions-dark.png"
  ],
  "bar_screenshots_dark": [],
  "has_bar": false,
  "bar_items": [],
  "has_links": false,
  "links": [],
  "multi": false,
  "has_readme": true
}
