Help With Photoshop Manifest.json

I have a plugin with No sub menus but its failing with the following message when I try to package it and for the life of me, I cannot see where the issue is.

Icons are not specified for panel entrypoints in the manifest.

{
“id”: “com.dbw.grain”,
“name”: “Grain”,
“version”: “1.0.0”,
“main”: “index.html”,
“host”: [
{
“app”: “PS”,
“minVersion”: “22.00”
}
],
“manifestVersion”: 4,
“entrypoints”: [
{
“type”: “panel”,
“id”: “vanilla”,
“minimumSize”: {
“width”: 230,
“height”: 150
},
“maximumSize”: {
“width”: 230,
“height”: 150
},
“preferredDockedSize”: {
“width”: 230,
“height”: 150
},
“preferredFloatingSize”: {
“width”: 230,
“height”: 150
},
“label”: {
“default”: “Grain”
}
}
],
“icons”: [
{
“width”: 48,
“height”: 48,
“path”: “icons/plugin.png”,
“scale”: [
1,
2
],
“theme”: [
“darkest”,
“dark”,
“medium”,
“lightest”,
“light”,
“all”
],
“species”: [
“pluginList”
]
}
],
“icons”: [
{
“width”: 23,
“height”: 23,
“path”: “icons/dark.png”,
“scale”: [
1,
2
],
“theme”: [
“darkest”,
“dark”,
“medium”
]
},
{
“width”: 23,
“height”: 23,
“path”: “icons/light.png”,
“scale”: [
1,
2
],
“theme”: [
“lightest”,
“light”
]
}
]
}

I found that when using the manifest document as is from the “Create New Plugin” button in the UXP development tool it leaves out one of the icon sections that is needed and it gives this error when packaging it.

After looking at some examples, I figured out what it was looking for. I made a template for myself. I just throw away the manifest doc it creates and use the template to start out with and just change it up as needed. If you use this one and just change up the ID, name, panel size it should work.

{
  "id": "com.company.pluginName",
  "name": "Plugin Name",
  "version": "1.0.0",
  "main": "index.html",
  "host": [
    {
      "app": "PS",
      "minVersion": "22.0.0"
    }
  ],
  "manifestVersion": 4,
  "entrypoints": [
    {
      "type": "panel",
      "id": "com.company.pluginName",
      "label": {
        "default": "Plugin Name"
      },        
      "minimumSize": {
        "width": 160,
        "height": 55
      },
      "maximumSize": {
        "width": 160,
        "height": 500
      },
      "preferredDockedSize": {
        "width": 160,
        "height": 460
      },
      "preferredFloatingSize": {
        "width": 160,
        "height": 460
      },
      "label": {
        "default": "Plugin Name"
      },
      "icons": [
        {
      "width": 23,
      "height": 23,
      "path": "icons/dark.png",
      "scale": [
        1,
        2
      ],
      "theme": [
        "darkest",
        "dark",
        "medium"
     ]
    },
    {
      "width": 23,
      "height": 23,
      "path": "icons/light.png",
      "scale": [
        1,
        2
      ],
      "theme": [
        "lightest",
        "light"
      ]
        }
      ]
    }
  ],
  "icons": [
    {
      "width": 23,
      "height": 23,
      "path": "icons/dark.png",
      "scale": [
        1,
        2
      ],
      "theme": [
        "darkest",
        "dark",
        "medium"
      ]
    },
    {
      "width": 23,
      "height": 23,
      "path": "icons/light.png",
      "scale": [
        1,
        2
      ],
      "theme": [
        "lightest",
        "light"
      ]
    }
  ]
}
2 Likes

Thanks for this.
Does this also create an Icon the the Adobe Plugin Panel or just the panel you are making

No. I did just saw that post today and was planning to look into that sometime soon.

here is one I have just found which adds the icon to the Adobe Plugin Panel dashboard

{
  "id": "YOUR ID HERE",
  "name": "PANEL NAME",
  "version": "1.0.0",
  "main": "index.html",
  "host": [
    {
      "app": "PS",
      "minVersion": "22.0.0"
    }
  ],
  "manifestVersion": 4,
  "entrypoints": [
    {
      "type": "panel",
      "id": "YOUR ID",
      "label": {
    "default": "Menu Label",
    "fr": "Etiquette de Menu",
    "de": "Menübezeichnung"
},
      "minimumSize": {
        "width": 230,
        "height": 150
      },
      "maximumSize": {
        "width": 230,
        "height": 150
      },
      "preferredDockedSize": {
        "width": 230,
        "height": 150
      },
      "preferredFloatingSize": {
        "width": 230,
        "height": 150
      },
      "label": {
        "default": "PANEL LABEL"
      },
      "icons": [
        {
          "width": 23,
          "height": 23,
          "path": "icons/dark.png",
          "scale": [
            1,
            2
          ],
          "theme": [
            "darkest",
            "dark",
            "medium"
          ]
        },
        {
          "width": 23,
          "height": 23,
          "path": "icons/light.png",
          "scale": [
            1,
            2
          ],
          "theme": [
            "lightest",
            "light"
          ]
        }
      ]
    }
  ],
  "icons": [
    {
      "width": 48,
      "height": 48,
      "path": "icons/plugin.png",
      "scale": [
        1,
        2
      ],
      "theme": [
        "darkest",
        "dark",
        "medium",
        "lightest",
        "light",
        "all"
      ],
      "species": [
        "pluginList"
      ]
    }
  ]
}

The only part I dont know what its for is

"default": "Menu Label",
        "fr": "Etiquette de Menu",
        "de": "Menübezeichnung"
1 Like

All explained here :wink: (scroll to the end)

Whew! This worked for me. It took 3 times debugging the brackets but I finally got a package!