name | about | title | labels | assignees |
---|---|---|---|---|
Add plugin |
Request to add your plugin to the Marketplace |
Add $REPOSITORY_NAME to Marketplace |
Plugin/New |
hanzei |
Product requirements
- The plugin is published under an Open Source license.
- The source code is available in a public Git repository.
- There is a public issue or bug tracker for the plugin, which is linked in the plugin documentation and linked via
support_url
in the manifest. - For the current release and upcoming ones a changelog has to be published, with a link recorded in the
release_notes_url
property of theplugin.json
manifest. - The plugin has to be out of Beta and be released with at least v1.0.0.
- All configuration is accessible via the Mattermost interface.
- The plugin ID defined in the manifest must not collide with the ID of an existing plugin in the Marketplace. It should follow the documentation's suggested naming convention.
Technical requirements
- The plugin works for 60k concurrent connections and in a High Availability deployment. Note: There are currently no publicly-available tools to verify these properties. As such, they are checked during code review by a developer.
- The plugin logs important events on appropriate log levels to allow System Admins to troubleshoot issues.
Security requirements
- Security reviews do not reveal any exploitable vulnerabilities in the plugin.
- The plugin provides an email address or a username on the Community Server used to report vulnerabilities in the future. Please post it into this issue or send it to ben.schumacher@mattermost.com.
Functional requirements
- The plugin must set a
min_server_version
in the manifest. - The plugin must work on all Mattermost versions greater than or equal to the
min_server_version
.
Documentation requirements (checked by a Technical Writer)
-
The plugin must include detailed usage documentation with at least one screenshot of the plugin in action, list of features, and a development guide. This is typically a
README
file or a landing page on the web. The link to the documentation is set ashomepage_url
in the manifest. A great example is theREADME
of the GitHub plugin. Typical components of documentation include:- Requirements/Prerequisites
- Installation steps
- Configuration steps
- Usage
- Troubleshooting
- Screenshots (if available)
- Link or email address for help/support
The plugin.json
file should include formatting consistent with the System Console interface. You can join the Documentation channel for assistance.