LimeStore extension development
From LimeSurvey Manual
This page describes how you as a third-party developer can create and publish extensions for LimeSurvey, available for purchase or free download in the LimeSurvey LimeStore.
FAQ
What is the LimeStore
LimeStore is the general extension shop for LimeSurvey GmbH, where "extension" can be one of the following:
- Plugin
- Theme
- Question template
- Survey template
- Localization package
- Component
Not all types are supported right now (as of 2019-01-14) but are planned to be.
Extensions can be both free to download and available for purchase. There is a legal agreement with regard to partner fees.
How do I become a third-party developer?
Apply at us, sign documents, give banking details/PayPal account for transactions, etc.
TODO
Adding an extension to the LimeStore
First, you have to be approved as a LimeStore extension vendor. See above.
The extension has to be zipped correctly, with a proper config.xml
file. See below.
config.xml specification
All LimeSurvey extensions include a config.xml
file with specifies author, version, type, and so on. Without this file, LimeSurvey won't be able to properly install the extension.
Tag | Type | Mandatory | Description |
---|---|---|---|
name | string | x | The name of the extension |
type | string | x | Type of the extension; can be "plugin", "theme", etc; see below |
creationDate | date (YYYY-MM-DD) | Date the extension was created | |
lastUpdate | date (YYYY-MM-DD) | Date of the latest update | |
author | string | x | Plugin author |
authorUrl | url | x | URL to author web page, necessary so that customers can contact author for support |
supportUrl | url | x | URL to support page, so that customers and users can contact authors about problems and questions |
version | string as semantic version | x | Extension version number |
lastSecurityUpdate | string as semantic version | Last version that included a security update | |
license | string | x | Extension licence |
description | CDATA | x | Short description of extension, visible in the LimeSurvey extension manager |
Allowed extension types
The following values are allowed in the type metadata tag:
Type | Tag value |
---|---|
Survey theme | theme |
Admin theme | admin_theme |
Plugin | plugin |
Survey template | survey_template |
Question template | question_template |
Plugin example
<config>
<metadata>
<name>MassAction</name>
<type>plugin</type>
<creationDate>2017-03-28</creationDate>
<lastUpdate>2018-01-24</lastUpdate>
<author>Olle Haerstedt</author>
<authorUrl>https://github.com/olleharstedt</authorUrl>
<supportUrl>https://github.com/olleharstedt/MassAction/issues</supportUrl>
<version>1.0.0</version>
<lastSecurityUpdate>1.0.0</lastSecurityUpdate>
<license>GNU General Public License version 2 or later</license>
<description><![CDATA[Edit multiple relevance equations in one page.]]></description>
</metadata>
</config>
Theme example
TODO
After upload
When an extension has been uploaded, it has to be approved by the LimeSurvey GmbH team. The workflow is as below.
State | Description |
---|---|
Processing | Waiting for scripts to finish |
Process failed | Internal system error, or other error like lacking config.xml file in ZIP archive |
In review | Waiting for manual approval of LimeSurvey GmbH member |
Disapproved | The extension was for some reason not approved by the team |
Approved | The extension has been approved and is now available for download or purchase in the LimeStore |
Disabled | Manually disabled by the third-party developer (not LimeSurvey GmbH) |
TODO: When updating to a new version/new zip file.