Themes

Themes defined the global behavior of a website, including the global “chrome” that makes up the header, footer, and potential sidebars of a website. Themes should include a global stylesheet as a resource bundle along with other common elements of the website.

Creating and Distributing Themes

Each Theme is just a collection of files in a directory that Emissary knows to scan. This can be a directory in the local filesystem, or a remote Git repository that is registered in the server configuration. Emissary will recognize a directory as a theme if it contains a theme.json definition file (as opposed to a template.json file or a widget.json file).

Theme File Format

Property Description
themeId Unique name used to identify this theme
label Human-friendly label, displayed in theme lists
description Human-friendly description, displayed in theme lists
rank integer sort order for ordering this theme in lists
extends Array of zero or more Unique IDs that this theme extends
bundles Describes resource bundles that are packaged with this Template

Required HTML Files

The following HTML templates MUST be included in order for your Theme to function. You can defined additional templates as necessary to be used internally.

Filename Description
page.html
register.html
reset-code.html
reset-confirm.html
reset-password.html
signin.html