There's a rich ecosystem of user-developed plugins outside of our official integrations, and it's very simple to share and utilize these handcrafted private plugins.
We've developed a standard ZIP file format that plugin developers (dare we say, artisans) can follow. It conveniently combines plugin settings, custom fields, and markup into one archive.
Exporting a private plugin
Exporting is as simple as clicking Export on the settings page for the specific plugin. A ZIP file will be downloaded with the entire contents of your plugin, including its settings, custom fields, and markup.
Importing a private plugin
On the Private Plugin settings page, simply click Import new and select the ZIP file to import. A new plugin will automatically be created and added to your playlist.
Plugin ZIP file contents
The ZIP archive of a private plugin contains the following flat list of files (no subdirectories):
settings.yml
full.liquid
half_horizontal.liquid
half_vertical.liquid
quadrant.liquid
settings.yml
is required.
The .liquid
files correspond to the individual Liquid HTML templates for each viewport. The maximum template file size is 1 MB.
settings.yml
See this article for details on configuring custom_fields
.
---
# required:
name: My Awesome Plugin
strategy: polling # polling | webhook | static
refresh_interval: 60 # minutes; 15 | 60 | 360 | 720 | 1440
# polling strategy only:
polling_url: https://example.com
polling_headers: ''
polling_verb: GET # GET | POST
# static strategy only:
static_data: '{"foo": "bar"}' # JSON string
# generic options:
no_screen_padding: 'no' # 'no' | 'yes' (quotes are necessary!)
dark_mode: 'no' # 'no' | 'yes' (quotes are necessary!)
# custom plugin form fields (optional, see docs):
custom_fields:
- keyname: units
name: Units
field_type: select
options:
- Metric
- Imperial