The Mendix Marketplace is driven by contributions from members of the community who share the connectors, modules, and apps they have built with the Mendix Platform. This how-to shows how to add and update Marketplace content.
This how-to will teach you how to do the following:
- Add new content and promotions to share in the Marketplace
- Update existing Marketplace content
Before starting this how-to, make sure you have completed the following prerequisites:
3 Marketplace Content Development Guidelines
This section presents guidelines for developing content that you will submit to the Mendix Marketplace.
Submitted Marketplace content will be reviewed within five working days.
These are some general guidelines for creating new Marketplace content:
- Set up a separate app to build and maintain your Marketplace component
- Use a relatively recent Mendix version when creating the item, not only the latest Mendix version
- Create multiple versions of your Marketplace component (for example, for Studio Pro 7 and 8 and Desktop Modeler 7)
You can add information the end-user should know to the component Documentation when you are adding the content to the Marketplace.
3.2 For Widgets
To develop widgets and submit them to Marketplace, follow these guidelines:
- The widget should be pluggable
- When writing variable and function names, use lowerCamelCase (for example, mySecondVariable)
- Add code comments
- A function should not be more than 200 lines of code
- A function should only do one thing, and it should do it properly
- Use hooks and functional components over class components
- Create test pages for mobile when content is made for mobile platforms
3.3 For Modules
To develop modules and submit them to the Marketplace, follow these guidelines:
- Create a folder named USE_ME and add the microflows and pages that are relevant for the user
- Create an empty folder with the version number as its name, which will appear in Studio Pro’s App Explorer
If you add any userlib .jar files, make sure they are accompanied by a blank MyModule.RequiredLib file so that users know where the .jar files come from
Verify that the module’s Java actions compile correctly (the easiest way to check is to create a deployment package, as it will clean the deployment folder and rebuild the app; for more information, see Environments)
Reduce the use of layouts and use snippets instead, which will result in fewer module dependencies and will reduce the number of potential errors (for example, missing layouts)
Creating a new release or module export should be done while the security level of the app containing the module is set to Production
The status must be Complete for the following:
- Page access
- Microflow access
- OData access
- Entity access
- Dataset access
For example pages and microflows to be copied to another module, select the Exclude from project option for the document in order to encourage duplication and reduce dependency errors
Do not rename entities and attributes when creating new versions, as data in these entities will get lost (replacing an existing module is based on the entity names)
The module should include the English language
3.4 For Selling App Services
For details on preparing and selling your component, see How to Sell Your App Service in the Marketplace.
4 Adding New Marketplace Content
To add content to the Marketplace, follow the steps in each section below.
4.1 Getting Started
To start, click Add content in the top-right corner of the Marketplace home screen:
Follow these steps to continue adding content:
On the Upload Content page, select the type of content you would like to publish (the available types correspond to the Marketplace home page):
Depending on the type you selected, you may be asked to select a sub-category for your component, for example:
Select the location where you want to publish your component:
- Public Marketplace (all Mendix users) – your component will be available to the Mendix community (this content will have to be reviewed and approved by Mendix before it is available)
- Private Marketplace (your company only) – your content will receive the Company only label and be available only via your Company Content page; selected private content of a user group can also be made available to user group guests for download; this content will not be reviewed by Mendix
You can only set the location in the initial version of your content. You cannot change this setting by updating the Marketplace component later.
On the General page, you need to provide some details about your component. The information you entered above is pre-filled on this page.
Follow these steps to describe your content:
- Enter a Name for your component.
- Enter a Description of your component (for example, “Node control is an native Android app that gives a system administrator access to the Mendix Cloud nodes being administered. From the app, the status of the different environments within a node can be monitored and an environment can be started or stopped.”).
The Category you selected earlier will be listed here. You can change this if necessary.
You can only set the category in the initial version of your content. You cannot change this setting after the inital version is published.
Select the Studio Pro Version on which you built the content.
- Apache V2
- GNU General Public License, version 3
- Mendix EULA<
- MindSphere Development License Agreement
- SDISW Development License Agreement for Mendix Sample Apps EXTERNAL
- SDISW End-User License Agreement for Mendix Connectors and Widgets
- SDISW End-User License Agreement for Mendix Connectors and Widgets EXTERNAL
- SDISW End-User License Agreement for Mendix Sample Apps
Click Upload an Image to upload an icon for the component.
- Save Draft to save the details you have entered so far to the Drafts page of your Marketplace (which you can access via the My Drafts button in the top-right of the page)
- Save & Continue to go to the next page of the upload flow
On the Package page, select your content source (note that if you are using Solutions, you will not see the option to select your content source).
- If you select Select from GitHub, follow the steps in the dialog box for copying the link of the release you want to import
- To include the repo’s README.md file on the component’s Documentation tab, make sure you have checked the Import Documentation box
- When you are finished, click OK
- If you select Manual upload, follow the steps in the dialog box for uploading the package source file
- When you are finished, click Save
If this is the first version of the component you are uploading, the number in the Version section of the Package page will be automatically set to 1.0.0.
Enter Release Notes for the component in the box provided describing what is new in that release.
On the Enable page, you can enter details on requirements and configuration for your component in the Documentation. Note that this documentation option is only available when the Import Documentation box has not been checked (on the Package page above).
Follow the template for the recommended content:
- You must fill out the following sections in order to submit your component:
- An extended Description of the component
- The Typical usage scenario for the component
- The Features and limitations of the component
- These sections are optional:
- Any Dependencies (for example, the required Studio Pro version, modules, images, and styles)
- The Installation steps and details
- The Configuration steps and details
- Any Compatibility steps and details
- Any Known bugs
- Any Frequently asked questions
The editor comes with a set of basic formatting tools, such as bold, bullet lists, and URL links.
You can attach images to your documentation in one of two ways (uploaded images cannot be resized, but linked images can):
- Drag the image from file explorer to the editor (this will upload your image)
- Click the Image button in the editor tools and enter a URL which points to an image
You can optionally add a Video and Demo.
Finally, on the Publish page, you can review all the details of your component you entered so far and edit as necessary (via the Edit Section button) before clicking Publish Content.
Review and approval by Mendix is required only for the first version of Public Marketplace content. Subsequent versions of public content do not need review or approval by Mendix. Private Marketplace content does not require any review or approval.
5 Updating Existing Marketplace Content
To update content that has already been published, follow these steps:
Find the component by clicking My Marketplace and selecting one of the following:
Click Manage next to the component you want to update.
Only one draft version of a component can exist at a time, so when one draft version is in progress, another draft cannot be started. If there is a draft version in progress, click View draft on the page where you manage the component in order to see the draft.
You can edit all component details, as described in the Adding New Marketplace Content section above.
In the Version section of the Package page, update the Major, Minor, and Patch numbers so that the component is saved as a new version:
- Major update – a large change (which will save the component from version 5.0 to version 6.0, for example)
- Minor update – a medium-sized change (which will save the component from version 6.0.0 to version 6.1.0, for example)
- Patch – a small change (which will save the component from 6.1.0 to 6.1.1, for example)
On the Publish page, you can review all the details of your component you entered so far and edit as necessary (via the Edit Section button) before clicking Publish Content.