Glossary of terms

Component

We refer to what you're coding as components. (Composer refers to them as packages; the terms component and package are equivalent.) A component can be classified into the following types:

You can package your components as follows:

data-variant=info
data-slots=text
Commerce Marketplace uses the blanket term product to refer to a component or a metapackage.

Metapackage

Commerce Marketplace requires more than one component to be packaged as a metapackage, which consists of only a composer.json that specifies individual components and their dependencies. (Commerce Marketplace also refers to a metapackage as an extension.)

A metapackage requires or suggests components that we refer to as shared packages. You can use a shared package in multiple metapackages if you wish. (If you use shared packages, Marketplace requires that all components in a metapackage be shared packages.)

For example, you might want to list two metapackages in the Commerce Marketplace---a standard package and a premium package. All of the standard package components could be shared packages used by the premium package.

Merchants do not need to understand that, under the covers, some packages are shared.

data-variant=warning
data-slots=text
You can upload to Commerce Marketplace as many shared packages as you want but you must specifically give components access to them. Failure to do so means your components won't work properly after they're installed by merchants. For more information, see the Commerce Marketplace User Guide.