Skip to main content

Project

The project object is the root of the project, that defines the main properties of the interface.

Each project has one or more pages that contain objects.

Follow this tutorial for more detailed info:

Create your first project with HSYCO

Or take a look to this tutorial about the project attributes:

Project Attributes

Attributes

General

Title

Specifies the title of the browser's tab that also normally appears in bookmarks.

note

This attribute is static. Its value can't be changed dynamically with a uiSet command or with a value binding.

Language

Defines the language used for all standard text messages of the Web interface.

The default value is: en.

note

This attribute is static. Its value can't be changed dynamically with a uiSet command or with a value binding.

Attribute Values
ValueDescription
zhChinese.
daDanish.
enDefault value. English.
esSpanish.
frFrench.
deGerman.
itItalian.
plPolish.
slSlovenian.

Locale

Specifies the locale to be used, or a list of locales.

If a list is provided, the runtime picks the best one available.

The default value is: =language.

Home Page

Specifies the ID of the page (without the "page:" prefix) that's displayed when the project is opened the first time or always, if history is disabled.

The default value is: home.

Size

Width

Specifies the width of the page area in pixels.

Minimum value is 50.

note

This attribute is static. Its value can't be changed dynamically with a uiSet command or with a value binding.

Height

Specifies the height of the page area in pixels.

Minimum value is 50.

note

This attribute is static. Its value can't be changed dynamically with a uiSet command or with a value binding.

Scale

Sets a scaling value to resize the UI frame.

The default value is: 1.

Attribute Values
ValueDescription
1Default value. 1:1 scale - the UI frame retains its original size.
fitThe UI frame is scaled to fill the available browser area, both vertically and horizontally.
<decimal positive number>Scale factor - the UI frame size is adjusted by a specified factor. Numbers greater than 1.0 enlarge the frame, while numbers smaller than 1.0 shrink it.

Min Scale

Specifies the minimum scale value.

The default value is: 0.5.

Attribute Values
ValueDescription
<decimal positive number>Minimum scale value.

Frame Margin

Specifies the distance in pixels between the UI frame from the browser's edges when scaled to fit the browser area.

The default value is: 0.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Attribute Values
ValueDescription
<number>Margin in pixels.

Portrait Size

Orientation Mode

Specifies how the project's UI responds to device rotation.

When set to "true," the UI will adjust to a portrait page when the device is held upright in portrait orientation.

Conversely, if set to "false," the UI will show landscape pages regardless of the device's orientation.

The default value is: true.

Attribute Values
ValueDescription
trueDefault value. Orientation mode enabled.
falseOrientation mode disabled.

Portrait Width

Specifies the width of the portrait page area in pixels.

Minimum value is 50.

note

This attribute is static. Its value can't be changed dynamically with a uiSet command or with a value binding.

Portrait Height

Specifies the height of the portrait page area in pixels.

Minimum value is 50.

note

This attribute is static. Its value can't be changed dynamically with a uiSet command or with a value binding.

Portrait Scale

Sets a scaling value to resize the UI frame when in portrait orientation.

The default value is: =scale.

Attribute Values
ValueDescription
11:1 scale - the UI frame retains its original size.
fitThe UI frame is scaled to fill the available browser area, both vertically and horizontally.
<decimal positive number>Scale factor - the UI frame size is adjusted by a specified factor. Numbers greater than 1.0 enlarge the frame, while numbers smaller than 1.0 shrink it.

Portrait Min Scale

Specifies the minimum scale value when in portrait orientation.

The default value is: 0.5.

Attribute Values
ValueDescription
<decimal positive number>Minimum scale value.

Portrait Frame Margin

Specifies the distance in pixels between the UI frame from the browser's edges when scaled to fit the browser area.

The default value is: 0.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Attribute Values
ValueDescription
<number>Margin in pixels.

Appearance

Skin

Defines the graphical appearance of the project.

note

This attribute is static. Its value can't be changed dynamically with a uiSet command or with a value binding.

Theme

Defines the theme, which changes the appearance of the UI.

The default value is: graphite.

Attribute Values
ValueDescription
graphiteDefault value. Graphite.
balticBaltic.
brightBright.
bootsycoBootsyco.

Theme Mode

Defines the mode of the theme.

The default value is: default.

Attribute Values
ValueDescription
defaultDefault value. Defaults to light or dark, depending on the theme.
lightLight mode.
darkDark mode.
autoAuto mode, based on the time of the day.
systemSystem mode, based on the system settings.

Theme Style

Defines the style of the theme.

The default value is: flat.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Attribute Values
ValueDescription
flatDefault value. Flat style.
raisedRaised style.
outlinedOutlined style.
glassGlass style.

Icon Set

Defines the default icon set that applies to all icons.

The default value is: mdi.

Kiosk

The kiosk mode removes the header and footer. It can be used for digital signage or kiosks applications to have a full-screen display of the pages. "lock" also disables the navigation functions.

The default value is: false.

Attribute Values
ValueDescription
falseDefault value. Header and footer can be displayed.
nolockHeader and footer are hidden.
lockHeader and footer are hidden, navigation is disabled.

Animated Background

Specifies an animated background for the whole viewport.

The default value is: none.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Attribute Values
ValueDescription
noneDefault value. No animation.
birdsBirds animation.
wavesWave animation.
netNet animation.
dotsDots animation.
ringsRings animation.
haloHalo animation.

Animated Background Options

Specifies the options for the animated background.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Custom Styling

Background Image

Specifies a background image for the whole viewport.

Attribute Values
ValueDescription
<image path>Path to the image file. Files are searched inside the project's directory first, then inside the www/img directory.

Background Fit

Specifies how the image should be resized to fit its container.

The default value is: cover.

Attribute Values
ValueDescription
fillThe image is resized to fill the given dimension. If necessary, the image will be stretched or squished to fit.
containThe image keeps its aspect ratio, but is resized to fit within the given dimension.
coverDefault value. The image keeps its aspect ratio and fills the given dimension. The image will be clipped to fit.
noneThe image is not resized.

Background Color

Specifies a background color for the whole viewport.

Header Background Color

Specifies a background color for the header.

Specifies a background color for the footer.

Page Background Color

Specifies a background color that covers the area behind pages.

Specifies a background color that covers the area behind popups.

Typography

Font Family

Specifies the font family.

The default value is: default.

Font Size

Specifies the font size in pixels or percentage (relative to the project's font size).

The default value is: 14.

Attribute Values
ValueDescriptionExample
<integer>Font size in pixels.
<percentage>%Relative font size in percentage.90%

Font Color

Specifies the text CSS color.

Attribute Values
ValueDescriptionExample
<html color>Color in any html accepted format.#ff0000

Font Weight

Specifies the weight of the font.

The default value is: normal.

Attribute Values
ValueDescription
normalDefault value. Normal.
boldBold.
bolderBolder.
lighterLighter.

Italic

Show the text in italics.

The default value is: false.

Attribute Values
ValueDescription
falseDefault value. Normal.
trueItalics.

Small Caps

Sets the font to small caps.

The default value is: false.

Attribute Values
ValueDescription
falseDefault value. Normal.
trueSmall caps.

Decoration

Specifies the text decoration.

The default value is: none.

Attribute Values
ValueDescription
noneDefault value. No decoration.
underlineUnderline.
overlineOverline.
line-throughLine through.

Line Height

Sets the line height of the text.

The default value is: 1.0.

Attribute Values
ValueDescription
<float>Specify the line height as a multiple of the font size.

Options

Autoreload

Specifies if the browser automatically reloads the page when the project changes.

The default value is: true.

Attribute Values
ValueDescription
trueDefault value. The page is automatically reloaded when the project changes.
falseThe browser won't automatically reload the page when the project changes.

Locked

Disables any user command for this project. Users will be able to navigate between pages and see the current status, but all commands will be locked.

The default value is: false.

Attribute Values
ValueDescription
falseDefault value. Lock disabled.
trueLock enabled.

History

Specifies if history features are enabled.

If enabled, the navigation history will be stored locally (in the localStorage of the browser), back/forward links in the header toolbar will be enabled and navigation will be resumed when the browser/tab is reopened or refreshed.

If not enabled, back/forward navigation will still be available from custom buttons, but the navigation history won't be stored locally and navigation won't be resumed when the browser/tab is reopened or refreshed.

To completely exclude a page from the history, set the "History" attribute of the page to "false".

The default value is: true.

Attribute Values
ValueDescription
trueDefault value. History enabled.
falseHistory disabled.

Gestures

Specifies if gestures are enabled.

The default value is: true.

Attribute Values
ValueDescription
trueDefault value. Gestures enabled.
falseGestures disabled.

Audio Channel

Audio channel to use with Audio and Public Announcement. If set, audio from a different channel won't be played. The default value is the name of the project.

Attribute Values
ValueDescription
<string>The name of an audio channel.

Scope

Specifies a scope.

If set, uiSets with the same scope will be enabled.

The scope is defined by the project's scope, plus the scope of the current page.

note

This attribute is static. Its value can't be changed dynamically with a uiSet command or with a value binding.

Attribute Values
ValueDescription
<string>The name of a scope.
<list>A comma-separated list of scopes.

Defaults

Specifies a list of default attributes shared among objects of the same type.

note

This attribute is static. Its value can't be changed dynamically with a uiSet command or with a value binding.

Attribute Values
ValueDescription
<list>List of default attribute values.

Style

note

This attribute has been deprecated since ver. 4.0

Legacy Mode

Enables legacy mode to support deprecated features of a specific version.

The default value is: false.

note

This attribute is static. Its value can't be changed dynamically with a uiSet command or with a value binding.

Attribute Values
ValueDescription
falseDefault value. Legacy mode disabled.
3.xLegacy mode enabled for version 3.x.

Templates have a different format: %1 instead of %1;.

Buttons support the value attribute, as an alias of label.

Object IDs can contain uppercase letters and other characters that are not allowed in the current version.

Page Transitions

Specifies if page transitions are enabled.

The default value is: false.

note

This attribute is experimental. It might not work properly and it might be modified or removed in a future release.

Attribute Values
ValueDescription
falseDefault value. Page transitions disabled.
truePage transitions enabled.

Camera

Camera List

Defines the display name of each camera. It is required when you are displaying cameras in the index.hsm file. If you need to prevent access to one or more cameras for a specific index.hsm page, you can set that camera with an empty name, “”, or the reserved words “null” or “empty”. These cameras will be skipped by the camera rolling function, or when manually going from one camera to the next.

Attribute Values
ValueDescription
<list>Comma separated list of all cameras, in the same order in which the cameras' ids appear in the Cameras parameter in hsyco.ini. The names must be enclosed in double quotes.

Camera Overlay

Defines custom overlay image masks for each camera. It is optional, and if not specified HSYCO will use the standard overlays.

Attribute Values
ValueDescription
<list>Comma separated list of the types of overlay for each defined camera. The possible types are:
"default": default overlay for the PTZ cameras
"": default overlay for the PTZ cameras
"null": no overlay
"filename.png": customized file, in the www/<project's name>/img or www/img directory.

Camera Grid List

Defines the display name of each camera grid. It is required when you are including camera grids in the project.

Attribute Values
ValueDescription
<list>Comma separated list of the cameras grids’ names, listed in order starting from 1, as they appear in the CameraGrid.id parameters in hsyco.ini. The names must be enclosed in double quotes.

Toast

Toast Position

Specifies the position of the toast messages.

The default value is: top-right.

Attribute Values
ValueDescription
top-leftTop left.
top-centerTop center.
top-rightDefault value. Top right.
bottom-leftBottom left.
bottom-centerBottom center.
bottom-rightBottom right.

Toast Position Portrait

Specifies the position of the toast messages when in portrait orientation.

The default value is: =toastposition.

Attribute Values
ValueDescription
top-leftTop left.
top-centerTop center.
top-rightTop right.
bottom-leftBottom left.
bottom-centerBottom center.
bottom-rightBottom right.

Toast

Displays a toast message. Value is a JSON object with the following properties:

  • message: the message to display
  • type: the type of the message (optional) - can be "info", "warning", "error", "success"
  • duration: the duration of the message in milliseconds (optional) - default is 4000. 0 means no timeout, needs to be dismissed by the user

{ "message": "<message>", "type": "<type>", "duration": <duration> }

note

This attribute is live. It can't be set from the Project Editor, it needs to be set dynamically with a UISet.

Attribute Values
ValueDescriptionExample
<json>Toast message.{ "message": "hello!" }

Screensaver

Screensaver

Enables a screensaver mode triggered by inactivity.

Minimum value is 0.

The default value is: 0.

Attribute Values
ValueDescription
0Default value. Disables screensaver mode.
[seconds]Enters screensaver mode after the specified seconds of inactivity.

Screensaver Image

Specifies a screensaver image.

Attribute Values
ValueDescription
[full url (http://...)]Set the image source.
[path relative to the project's img/ path].
[empty string]No screensaver image.

Screensaver Image Size

Specifies the resize mode of the screensaver image.

The default value is: fit.

Attribute Values
ValueDescription
fitDefault value. The image is fully contained in the interface.
cropThe image covers the interface.

Debug

Debug

Sets the debug mode for the project.

In debug a mode, a debug popup will be displayed.

Value can be either true/false or a timestamp of the time until the debug mode is active.

This attribute is automatically set from the Project Editor options.

Otherwise it works only if it's received from the server, not if set locally on the client.

note

This attribute is live. It can't be set from the Project Editor, it needs to be set dynamically with a UISet.

Attribute Values
ValueDescription
trueDebug mode enabled.
falseDebug mode disabled.
<timestamp>Debug mode enabled until the specified timestamp.

Meta

Comment

Specifies a comment, visible only in the Project Editor. It can be used to add a note or a tag to the object. The filter in the object's SELECT panel applies to the comment as well.

note

This attribute is static. Its value can't be changed dynamically with a uiSet command or with a value binding.

Exclude

Excludes the object from the UI. Useful to temporarily hide an object without deleting it. Different from the "Visible" attribute, which hides the object in the UI but keeps it in the project, allowing it to be shown again with a UISet.

The default value is: false.

note

This attribute is static. Its value can't be changed dynamically with a uiSet command or with a value binding.

Attribute Values
ValueDescription
falseDefault value. Object is included in the UI.
trueObject is excluded from the UI.