{
  "id": "./",
  "name": "OpenShop Image Editor",
  "version": "0.30.0",
  "short_name": "OpenShop",
  "description": "Private, client-side image editing with layers, selections, PSD interchange, and optional browser-local AI.",
  "start_url": "./",
  "scope": "./",
  "display": "standalone",
  "orientation": "any",
  "background_color": "#0a0c10",
  "theme_color": "#0a0c10",
  "categories": [
    "graphics",
    "photo"
  ],
  "icons": [
    {
      "src": "./icon-192.png",
      "sizes": "192x192",
      "type": "image/png",
      "purpose": "any"
    },
    {
      "src": "./icon-192.png",
      "sizes": "192x192",
      "type": "image/png",
      "purpose": "maskable"
    },
    {
      "src": "./icon-512.png",
      "sizes": "512x512",
      "type": "image/png",
      "purpose": "any"
    },
    {
      "src": "./icon-512.png",
      "sizes": "512x512",
      "type": "image/png",
      "purpose": "maskable"
    }
  ],
  "screenshots": [
    {
      "src": "./design/openshop-studio-master.png",
      "sizes": "1505x1045",
      "type": "image/png",
      "form_factor": "wide",
      "label": "OpenShop desktop editor"
    },
    {
      "src": "./design/openshop-menu-states.png",
      "sizes": "1536x1024",
      "type": "image/png",
      "form_factor": "narrow",
      "label": "OpenShop compact editor"
    }
  ],
  "shortcuts": [
    {
      "name": "New canvas",
      "short_name": "New",
      "description": "Start a new OpenShop canvas",
      "url": "./?action=new",
      "icons": [
        {
          "src": "./icon-192.png",
          "sizes": "192x192",
          "type": "image/png"
        }
      ]
    },
    {
      "name": "Open image",
      "short_name": "Open",
      "description": "Open a local image in OpenShop",
      "url": "./?action=open",
      "icons": [
        {
          "src": "./icon-192.png",
          "sizes": "192x192",
          "type": "image/png"
        }
      ]
    }
  ],
  "launch_handler": {
    "client_mode": "navigate-existing"
  },
  "share_target": {
    "action": "./?share=target",
    "method": "POST",
    "enctype": "multipart/form-data",
    "params": {
      "files": [
        {
          "name": "files",
          "accept": [
            "image/*",
            ".ora",
            ".psd",
            ".openshop",
            ".pdf",
            ".3fr",
            ".arw",
            ".cr2",
            ".cr3",
            ".dcr",
            ".dng",
            ".erf",
            ".gpr",
            ".iiq",
            ".kdc",
            ".mef",
            ".mos",
            ".mrw",
            ".nef",
            ".nrw",
            ".orf",
            ".pef",
            ".raf",
            ".raw",
            ".r3d",
            ".rw2",
            ".rwl",
            ".sr2",
            ".srf",
            ".srw",
            ".x3f"
          ]
        }
      ]
    }
  },
  "file_handlers": [
    {
      "action": "./",
      "accept": {
        "image/png": [
          ".png"
        ],
        "image/jpeg": [
          ".jpg",
          ".jpeg"
        ],
        "image/webp": [
          ".webp"
        ],
        "image/gif": [
          ".gif"
        ],
        "image/apng": [
          ".apng"
        ],
        "image/avif": [
          ".avif"
        ],
        "image/jxl": [
          ".jxl"
        ],
        "image/heic": [
          ".heic"
        ],
        "image/heif": [
          ".heif"
        ],
        "image/svg+xml": [
          ".svg"
        ],
        "image/bmp": [
          ".bmp"
        ],
        "image/openraster": [
          ".ora"
        ],
        "image/vnd.adobe.photoshop": [
          ".psd"
        ],
        "application/pdf": [
          ".pdf"
        ],
        "application/octet-stream": [
          ".3fr",
          ".arw",
          ".cr2",
          ".cr3",
          ".dcr",
          ".dng",
          ".erf",
          ".gpr",
          ".iiq",
          ".kdc",
          ".mef",
          ".mos",
          ".mrw",
          ".nef",
          ".nrw",
          ".orf",
          ".pef",
          ".raf",
          ".raw",
          ".r3d",
          ".rw2",
          ".rwl",
          ".sr2",
          ".srf",
          ".srw",
          ".x3f"
        ],
        "application/vnd.openshop+json": [
          ".openshop"
        ],
        "application/json": [
          ".json"
        ]
      },
      "launch_type": "single-client"
    }
  ]
}
