{
  "name": "solitaire",
  "kind": "bundled",
  "title": "Solitaire",
  "description": "Klondike on a felt table: drag the cards with the mouse, or play one-handed on the arrows and Enter (Enter twice sends a card where it goes). Draw one or three, unlimited passes, undo; the game and the record persist.",
  "version": "0.1.0",
  "icon": {
    "tile": {
      "glyph": "󱢯",
      "bg": "green"
    }
  },
  "author": "pal",
  "spec": "github:zcag/pal/extensions/solitaire@v0.8.0",
  "source": "https://github.com/zcag/pal/tree/HEAD/extensions/solitaire",
  "commit": "cf252bba7d9bcadcb5a57a035984f9302b0a9192",
  "manifest": {
    "name": "solitaire",
    "title": "Solitaire",
    "description": "Klondike on a felt table: drag the cards with the mouse, or play one-handed on the arrows and Enter (Enter twice sends a card where it goes). Draw one or three, unlimited passes, undo; the game and the record persist.",
    "version": "0.1.0",
    "icon": {
      "tile": {
        "glyph": "󱢯",
        "bg": "green"
      }
    },
    "author": "pal",
    "repo": "bundled",
    "license": "MIT",
    "settings": [
      {
        "kind": "select",
        "id": "draw",
        "label": "Draw",
        "description": "Cards turned from the stock at a time. Applies from the next deal.",
        "options": [
          {
            "id": "1",
            "title": "One card"
          },
          {
            "id": "3",
            "title": "Three cards"
          }
        ],
        "default": "1"
      },
      {
        "kind": "boolean",
        "id": "clock",
        "label": "Clock",
        "text": "Show the time while you play",
        "description": "Off hides the running time beside the table. Your time still shows when you win. Also T or ⌘K in the game.",
        "default": true
      }
    ],
    "store": {
      "tagline": "Klondike with real cards: drag and drop, or the arrows and Enter; the game and the record persist",
      "category": "fun",
      "features": [
        "A felt table filling the panel, the cards as large as it allows: a column fans out while it has room and tightens as it grows, never past where a card's rank shows",
        "Drag a card or a run with the mouse: the piles it can go on light up, a drop anywhere else glides it back. Or click the cards, then where they go; a double-click sends a card home, a click on the stock draws",
        "One-handed: `←` `→` walk the stock, the waste, the foundations and the seven piles, `↑` `↓` take more or fewer cards of a face-up run (and past it, the row above or below), `Enter` picks up and drops",
        "`Enter` twice on the same card sends it where it goes: its foundation, else the first pile that takes it",
        "Every card glides to where it goes and turns over with a flip; the deal goes out row by row from the stock, and a win bounces the cards off the foundations",
        "The title line says what the cursor is on (`Pile 4 · 9♣ 8♥`), what you carry (`Moving 7♥ and 2 more`) or why a move was refused (`7♥ can't go on 9♠`)",
        "Draw one or three (a setting), unlimited passes through the stock, `U` or `Backspace` undoes (a hundred moves back)",
        "Once every card is face up the rest flies home by itself, one card at a time",
        "Moves, the time played (only while the table is open) and games won of played beside the table; Escape leaves at any point and the game is there when you come back"
      ],
      "permissions": [],
      "platforms": [
        "macos",
        "linux"
      ],
      "screenshots": [
        {
          "file": "1-deal.png",
          "caption": "A fresh deal: the cursor on the stock, the moves, the time and the record beside the table"
        },
        {
          "file": "2-game.png",
          "caption": "54 moves in: the cursor takes 4 cards of a run, the title line names them"
        },
        {
          "file": "3-carry.png",
          "caption": "Enter picks the run up: it lifts, and the pile it can go on lights up"
        },
        {
          "file": "4-won.png",
          "caption": "Won: every card home, the moves and the time, Enter deals again"
        }
      ],
      "actions": [
        {
          "title": "Pick up, drop",
          "description": "Enter on a card picks it up (with the cards under it, as deep as ↑ reached); Enter on another pile drops them there. On the stock, draws. With the mouse: drag, or click the cards and then the pile.",
          "keys": "enter"
        },
        {
          "title": "Send where it goes",
          "description": "Enter again on the pile the cards came from, or a double-click: to the card's foundation, else to the first pile that takes them.",
          "keys": "enter"
        },
        {
          "title": "Previous pile, next pile",
          "description": "Across the stock, the waste, the foundations and the seven piles, wrapping round. `h` and `l` too.",
          "keys": "left, right"
        },
        {
          "title": "More cards, fewer cards",
          "description": "How deep into a face-up run to take; past it, the row above or below. `k` and `j` too.",
          "keys": "up, down"
        },
        {
          "title": "Draw",
          "description": "From anywhere; turns the waste back over when the stock is out.",
          "keys": "space"
        },
        {
          "title": "Undo",
          "description": "The last move back, or the cards you hold put back.",
          "keys": "u"
        },
        {
          "title": "New game",
          "description": "Asks first mid-game; the game counts as lost.",
          "keys": "n"
        },
        {
          "title": "Hide the clock",
          "description": "No running time beside the table; again to bring it back.",
          "keys": "t"
        }
      ],
      "play": true
    },
    "palettes": {
      "solitaire": {
        "title": "Solitaire",
        "kind": "view",
        "description": "The table. Escape leaves mid-game; it is there when you come back.",
        "keys": [
          {
            "keys": "enter",
            "title": "Pick up, drop; twice on the same card, send it where it goes; draw on the stock"
          },
          {
            "keys": "left",
            "title": "Previous pile (also right, h, l)"
          },
          {
            "keys": "up",
            "title": "One more card of the run, then the row above (also down, k, j)"
          },
          {
            "keys": "space",
            "title": "Draw (also d)"
          },
          {
            "keys": "u",
            "title": "Undo (also backspace)"
          },
          {
            "keys": "n",
            "title": "New game, after a confirm mid-game"
          }
        ]
      }
    }
  },
  "playable": true,
  "updated_at": "2026-09-29T23:05:58Z",
  "url": "https://pal.cagdas.io/extensions/solitaire",
  "tagline": "Klondike with real cards: drag and drop, or the arrows and Enter; the game and the record persist",
  "category": "fun",
  "screenshots": [
    "https://pal.cagdas.io/extensions/solitaire/screenshots/1-deal-dark.png",
    "https://pal.cagdas.io/extensions/solitaire/screenshots/1-deal.png",
    "https://pal.cagdas.io/extensions/solitaire/screenshots/2-game-dark.png",
    "https://pal.cagdas.io/extensions/solitaire/screenshots/2-game.png",
    "https://pal.cagdas.io/extensions/solitaire/screenshots/3-carry-dark.png",
    "https://pal.cagdas.io/extensions/solitaire/screenshots/3-carry.png",
    "https://pal.cagdas.io/extensions/solitaire/screenshots/4-won-dark.png",
    "https://pal.cagdas.io/extensions/solitaire/screenshots/4-won.png"
  ],
  "panel_screenshots": [
    "https://pal.cagdas.io/extensions/solitaire/screenshots/1-deal.png",
    "https://pal.cagdas.io/extensions/solitaire/screenshots/2-game.png",
    "https://pal.cagdas.io/extensions/solitaire/screenshots/3-carry.png",
    "https://pal.cagdas.io/extensions/solitaire/screenshots/4-won.png"
  ],
  "bar_screenshots": [],
  "panel_screenshots_dark": [
    "https://pal.cagdas.io/extensions/solitaire/screenshots/1-deal-dark.png",
    "https://pal.cagdas.io/extensions/solitaire/screenshots/2-game-dark.png",
    "https://pal.cagdas.io/extensions/solitaire/screenshots/3-carry-dark.png",
    "https://pal.cagdas.io/extensions/solitaire/screenshots/4-won-dark.png"
  ],
  "bar_screenshots_dark": [],
  "has_bar": false,
  "bar_items": [],
  "has_links": false,
  "links": [],
  "multi": false,
  "has_readme": true
}
