The app manifest

The app manifest is an xml file in the root folder of your app that defines all the metadata of your app. The following paragraphs will explain the individual parts of the manifest file.

Identification

The manifest contains the elements groupId, appId and name to identify the plugin. A good practice is to use your company name and the name of your division as groupId to prevent name clashes.

  <groupId>com.novomind.ishop.plugin</groupId>
  <appId>ishop-plugin-helloworld</appId>
  <name>Hello!</name>

  <vendor>novomind AG</vendor>

Version and product support

Your plugin should contain a version and a supported version range of the target product:

  <version>1.2</version>
  <supportedVersion>
    <minimum>22.0.0</minimum>
    <maximum>27.0.0</maximum>
  </supportedVersion>
  <product>ishop</product>

Descriptions

The manifest defines localized descriptions in multiple formats that are displayed in the app store. An icon and some screenshots can be provided as well as search engine optimized sellingPoints

  <categories>
    <category>backoffice</category>
    <category>frontend</category>
  </categories>

  <longDescriptions>
    <longDescription locale="en">
      This description is written in [markdown](https://en.wikipedia.org/wiki/Markdown)
    </longDescription>
  </longDescriptions>

  <screenshots>
    <screenshot>META-INF/manifest-resources/screenshot1.png</screenshot>
    <screenshot>META-INF/manifest-resources/screenshot2.png</screenshot>
    <screenshot>META-INF/manifest-resources/screenshot3.png</screenshot>
  </screenshots>

  <icon>META-INF/manifest-resources/icon.png</icon>

  <sellingPoints>
    <sellingPoint locale="en">Simple configuration</sellingPoint>
    <sellingPoint locale="en">CSS included</sellingPoint>
    <sellingPoint locale="en">Text included</sellingPoint>
  </sellingPoints>

Download section

Finally the manifest also describes contact information and whether it is allowed to download the plugin:

  <download>false</download>
  <email>tvoecking@novomind.com</email>
  <phone>040-8080712243</phone>

Metadata

There is a metadata section where product specific data is stored. This usually contains technical configuration. Refer to the corresponding section of the target product to find out what can be configured here.

Schema

You can download the schema to validate your app's manifest against it:

Download schema.