AVstudio Editor NG
AVstudio Editor Features
Explore the complete editor, from visual interface design and equipment connections to live data, reusable pages, browser testing, Git, and AI assistance.
274 features across 19 sections
Back to the NG overviewShowing all 274 features
Workspace and project 11
Documentation| Feature | Description |
|---|---|
| Inside Visual Studio Code | Create AV interfaces in VS Code, with visual design, the file Explorer, source editing, and development tools in one workspace. |
| Project initialization | Create an AVstudio project structure, including folders, configuration, and supporting files, through AVstudio Hub. |
| Visual WYSIWYG editing | Design on a canvas: add and select controls, then configure their appearance, content, and behavior. |
| AVstudio Hub | Create pages, containers, variables, datasources, functions, and connectors; open themes, the icon library, and project tools. |
| Page Properties | Manage a screen’s layout, containers, parameters, appearance, and page actions. |
| Container Properties | Configure a group’s arrangement, alignment, spacing, dimensions, scrolling, and appearance. |
| Element Properties | Configure the selected component’s content, dimensions, data bindings, states, appearance, and actions. |
| Source-file access | Open and edit pages, connectors, data, styles, functions, and configuration directly in Explorer. |
| Command Palette | Run AVstudio commands from the keyboard to create entities, open editors, check a project, start preview, and build. |
| Status-bar shortcuts | Access Build, Live Preview, MCP, device dimensions, log level, and other frequent operations. |
| Local editing | Edit and keep project source on your computer. Equipment connections, external APIs, and online services depend on the availability of their respective connections. |
Pages and layouts 23
Documentation| Feature | Description |
|---|---|
| Multi-page interfaces | Add separate screens for rooms, sources, lighting, climate, settings, and other project areas. |
| Page folders | Organize screens and related subpages into modules to keep larger projects manageable. |
| Start-page selection | Choose the screen opened when the application starts and when a Home routing action is used. |
| Responsive Layout | Build interfaces whose containers and elements share the available viewport space. |
| Fixed Layout | Position elements with precise geometry when a screen requires a specific composition. |
| Fixed-layout constraints | Use positioning constraints and edge anchoring to define how elements respond when the available dimensions change. |
| Containers for control groups | Divide a page into logical regions such as navigation, source selection, audio controls, and status information. |
| Page container flow | Arrange a page’s top-level containers horizontally or vertically. |
| Element flow within a container | Arrange each container’s elements in a row or column, independently of the page’s direction. |
| Element alignment | Align elements to the start, center, or end of the cross axis, or stretch eligible elements where their dimensions allow it. |
| Space distribution | Group elements at the start, center, or end, or distribute available space between or around them. |
| Page gap | Set the spacing between a page’s main containers. |
| Container gap | Set consistent spacing between elements within a container. |
| Padding | Set overall padding and individual side insets on containers and supported elements. |
| Flexible container sizing | Let containers share the remaining space, for example to create equal main-content columns. |
| Manual container sizing | Reserve a fixed-height header or a fixed-width sidebar while keeping the remaining content flexible. |
| Fixed and relative element dimensions | Combine pixel dimensions and relative sizing, such as 100% width with a maximum-width limit. |
| Minimum and maximum dimensions | Limit how elements grow or shrink to preserve suitable geometry and touch areas. |
| Internal container scrolling | Keep a long list in a scrolling region while retaining access to a header or neighboring containers. |
| Scrollbar visibility | Choose scrolling with a visible bar, scrolling with a hidden bar, or disabled scrolling for a region. |
| Container scroll snap | In a responsive container, snap scroll resting positions to the start, center, or end of its direct elements. |
| Copy, cut, and paste elements | Copy or move elements through the context menu and keyboard shortcuts. |
| Element duplication | Create copies of a configured element, then adapt their labels, commands, and feedback bindings. |
Built-in UI Elements - 16 types 16
Documentation| Feature | Description |
|---|---|
| Button | Create command buttons, scene and source selectors, navigation controls, and triggers for additional screens, with text, icons, and states. |
| Text | Display static labels, rich text, variable values, page parameters, and fields from attached datasources. |
| Image | Display logos, equipment images, artwork, and other graphics from local project assets or an external URL. |
| Spacer | Create individual gaps, dividers, and decorative blocks with configurable dimensions, backgrounds, and borders. |
| State Control | Add a two-state control in Switch, Checkbox, or Toggle form for lighting, mute, and other boolean choices. |
| Input | Accept text or numeric entry; configure a placeholder, autofocus, and password display that masks characters on screen. |
| Date Time | Show an analog clock, digital time, or combined date and time; configure locale, time zone, seconds, and AM/PM display. |
| Video | Embed video files and streams using Standard, HLS, or RTSP variants. RTSP requires App Container. |
| Slider | Create linear volume, brightness, and other numeric controls with limits, step size, and incoming feedback. |
| RGB Picker | Select a color using independent Red, Green, and Blue channels from 0-255; receive channel values and send color changes. |
| Round Slider | Create circular level or setpoint controls in full-circle, horseshoe, or half-circle forms. |
| Shades Compact | Create shade-position controls with vertical, left, right, or dual presentations. |
| Dpad | Create a remote with four directions and an optional center button, with independent commands for each region. |
| Autonomic | Embed an Autonomic media-player interface with player selection, metadata, artwork, and playback controls when a reachable Autonomic service is configured. |
| Subpage | Embed an existing page as one reusable interface block with its own input parameters. |
| Subpage List | Repeat a target page for every item in an array datasource to build room, source, device, and other catalogs. |
Element Configuration 19
Documentation| Feature | Description |
|---|---|
| Drag-and-drop insertion | Drag a component from the component toolbar into the intended container on the visual canvas. |
| Context-menu insertion | Choose a component through Add element and search the available types by name. |
| Rich text for labels and buttons | Combine formatted text, dynamic values, and labels in Text and Button content. |
| Button icons | Add an icon to a button label and configure its size, color, and position relative to the text. |
| Images as icons | Use your own image asset in place of a library icon on a button. |
| Slider variants | Choose Simple or Fat for a single value, or Range for an interval with two handles. |
| Control limits and step | Set minimum, maximum, and increment values to match the equipment parameter being controlled. |
| Slider orientation | Make a Slider horizontal or vertical and reverse the direction in which its value increases. |
| Slider appearance | Style the track, progress area, handle size and appearance, labels, and value tooltips. |
| Range Slider values | Configure two incoming values and their corresponding outgoing destinations for the lower and upper bounds. |
| Round Slider appearance | Configure the arc shape, limits, increment, direction, track thickness, handle, and center text. |
| Shade appearance | Configure the fabric presentation, color or image, position range, and handle appearance. |
| Dpad configuration | Set direction labels, arrow colors, pressed appearance, geometry, and center-button visibility. |
| Image fitting | Use Contain to preserve the whole image, Cover to fill with cropping, or Fill to stretch the image to its box. |
| Image alignment and opacity | Control image positioning within its element and its opacity. |
| MJPEG streams | Display a camera feed or video-output preview using Image Stream; click to request or refresh the stream. |
| Video playback settings | Configure autoplay, loop, mute, control visibility, and a poster image. Playback depends on the target runtime and supported codecs. |
| HLS playback | Connect an HLS playlist URL and test playback in the intended runtime. |
| RTSP through App Container | Configure an RTSP source for App Container’s native bridge; ordinary browser Live Preview cannot play that RTSP variant. |
Themes, styling, and assets 20
Documentation| Feature | Description |
|---|---|
| Visual Theme Editor | Configure shared project styles through the visual editor for a .theme file. |
| Multiple project themes | Keep different themes in a project and select the active one through configuration or theme-selection commands. |
| Shared component styles | Set the default appearance of buttons, containers, and other element types centrally. |
| Local appearance overrides | Override the active theme for a particular page, container, or element. |
| Typography | Configure fonts, size, color, text transformation, and wrapping on supported objects. |
| Custom fonts | Include TTF, OTF, WOFF, and WOFF2 files as theme dependencies. |
| Background colors | Set background colors on pages, containers, and components. |
| Background images | Use images from project assets or the theme folder as backgrounds on supported objects. |
| Video backgrounds | Use a local MP4/WebM asset or external URL as a background layer, with opacity and looping settings. |
| Gradient backgrounds | Create gradients with the visual picker and apply them through a theme or an individual object. |
| Layered backgrounds | Combine color, image, video, and gradient layers with independent opacity settings. |
| Borders and corners | Configure border color, style, width, corner radii, and padding. |
| Shadows, reflection, and blur | Apply supported visual effects through Appearance settings. |
| CSS classes | Assign components custom classes to reuse your own styling rules. |
| Theme companion CSS | Load custom CSS files stored beside the active .theme file; their styles follow that theme’s activation. |
| Page-folder CSS | Add CSS scoped to pages within a particular folder for more advanced styling. |
| Page-transition animations | Configure transitions in pageTransitions.css, including duration and entry/exit animations. Playback depends on View Transitions support in the runtime. |
| Bundled icon library | Search and select icons from bundled packs. The Product Guide describes 50,389 icons across 31 packs. |
| Icon-pack management | Activate the required packs to add their SVG bundles to the project, and remove unused packs. |
| Project media assets | Keep images, audio, and video in the project so they travel with its source. |
States and feedback 11
Documentation| Feature | Description |
|---|---|
| Multiple appearance modes | Create alternate appearances for one element, such as Selected, On, Unavailable, or other application states. |
| Mode property inheritance | Override only the properties that change in a mode while retaining the remaining Default settings. |
| Boolean mode selection | Use a boolean selector: false shows Default and true selects the first added mode. |
| Indexed mode selection | Select an appearance by numeric index when equipment reports multiple defined states. |
| Named mode selection | Select an appearance using a string that matches the mode’s name. |
| Editor mode preview | Switch the appearance shown on the design canvas to edit a mode without waiting for live feedback. |
| Mode-specific actions | Keep the element’s base actions or define a replacement action list for a particular mode. |
| Button Pressed State | Bind a button’s pressed/selected state to a variable, page parameter, or Crestron feedback, with pressed styling defined by the theme. |
| Button Disabled State | Dynamically disable a button: its actions are suppressed and its appearance changes according to the theme. |
| Dynamic component content | Drive labels, colors, image/video sources, placeholders, and other supported properties from changing data. |
| Reported system state | Make the interface follow incoming feedback, including equipment changes made from another controller. |
Reusable Interface Components 14
Documentation| Feature | Description |
|---|---|
| Reusable pages | Build a shared remote, room card, volume panel, or other block once and embed it in multiple screens. |
| Shared-block updates | Edit the source subpage to update every location that embeds it. |
| Per-instance parameters | Give each instance of a shared page its own names, identifiers, values, and settings. |
| Dynamic input parameters | Pass global variables, parent-page parameters, and current list-record fields into a subpage. |
| Dynamic subpage targets | Use a supported dynamic binding to select the target page of a Subpage element. |
| Data-driven card repetition | Automatically create one instance of a target page for every record in an array datasource. |
| Independent card values | Map each record’s fields to its own instance parameters while keeping one shared card design. |
| Grid layout for repeated pages | Configure rows, columns, gaps, and fill direction for a list of repeated pages. |
| Boxless repeated-page layout | Let the parent container arrange repeated instances rather than using the list’s own grid box. |
| Subpage List scrolling | Show more items than fit in the visible area, with horizontal or vertical scrolling. |
| List scroll snap | In Grid mode, snap scroll resting positions to cell edges or centers. |
| Global Slots | Place shared pages in top, bottom, left, and right regions around the main page. |
| Shared navigation and status | Maintain one header, sidebar menu, footer, or system-status region across multiple screens. |
| Per-page slot visibility | Show a global region everywhere except selected pages, or only on explicitly selected pages. |
Variables, parameters, and bindings 14
Documentation| Feature | Description |
|---|---|
| Global variables | Store values shared across the project, such as source selection, volume, language, building name, and other common state. |
| Page parameters | Keep values local to a page or subpage instance so repeated blocks can remain independent. |
| String, Number, and Boolean types | Use text, numeric, and logical values with matching configuration and bindings. |
| Default values | Provide defined initial content before external data or feedback arrives. |
| Visual dynamic-value picker | Bind properties by selecting variables, parameters, datasource paths, or supported feedback in a picker. |
| Values within labels | Combine fixed text and data, for example a room name or a current volume level within a label. |
| Dynamic rich text | Insert variables, page parameters, and feedback into formatted Text and Button content. |
| Boolean display labels | Display different text for true and false, such as “Lights on” and “Lights off.” |
| External value setters | Update values from Crestron, MQTT, KNX, and WebSocket through External Value Setter configuration. |
| Value formatting | Apply a formatter before an incoming value is consumed by a variable or parameter. |
| Actions on value changes | Run configured actions when a global variable or page parameter changes. |
| Direct Crestron feedback bindings | Read Digital, Analog, and Serial feedback directly in supported properties without an intermediary global variable. |
| Dynamic join identifiers | Build a Crestron join name or number from variables, parameters, and datasource fields, for example in repeated room cards. |
| Feedback passed to subpages | Pass incoming values into reusable-block parameters, including a different feedback join for each list item. |
Actions and navigation 20
Documentation| Feature | Description |
|---|---|
| Multiple actions per element | Attach several operations to one element, such as sending a command and navigating to the selected source’s control page. |
| Press interaction events | Trigger actions on press, release, click, and hold where the component supports those events. |
| Value-change events | Use beforeChange, onChange, and afterChange for value controls and other supported input components. |
| Focus events | Configure actions when supported inputs gain or lose focus. |
| Page-load actions | Run operations on onLoad, for example to initialize a screen according to the project’s design. |
| Page-exit actions | Run operations on onExit when leaving a screen. |
| Execution delay | Delay an action by a configured number of milliseconds. |
| Page routing | Open a selected interface page in response to an action. |
| Home routing | Return to the project’s configured start page. |
| Back routing | Return through navigation history. |
| Set a global variable | Write a project-wide value from an element action or another supported event. |
| Set a page parameter | Change a local value on the current page or reusable-page instance. |
| Boolean operations | Use True, False, and Toggle for supported boolean destinations. |
| Forward an event value | Send the actual changed value from a Slider, Input, or another value control instead of a fixed literal. |
| Function actions | Run a selected project JavaScript function in response to an event. |
| Audio actions | Configure an audio source, playback state, volume, and looping in a supported runtime. |
| Dynamic action fields | Resolve variables, parameters, datasource paths, and supported feedback in command fields according to the action’s scope. |
| Text messages | Compose text payloads for supported HTTP, WebSocket, and MQTT operations. |
| JSON messages | Create JSON request/message bodies in a dedicated editor with visual dynamic-value tokens. |
| Event-context tokens | Include an element name, pressed Dpad direction, control value, RGB channels, or entered text in a JSON action body. |
Overlays and popups 9
Documentation| Feature | Description |
|---|---|
| Page-based overlays | Display an existing page above the current interface as settings, confirmation, or another temporary panel. |
| Fullscreen overlays | Show overlay content across the available interface area. |
| Anchored popovers | Open a popup near its trigger with placement and offset settings; the runtime adjusts positioning near container edges. |
| Dynamic overlay targets | Select the overlay page through a supported variable, parameter, or datasource binding. |
| Background mask | Enable a mask and configure its color, opacity, and blur through the shared theme. |
| Overlay close button | Show a close button on fullscreen overlays and style it through the theme. |
| Click dismissal | Configure closing on outside clicks or other supported click-dismissal behavior. |
| Autoclose timer | Close an overlay automatically after a configured interval in seconds. |
| Close Overlay action | Dismiss an overlay through an explicit action, for example on Confirm or Cancel. |
Connectors and protocols 32
Documentation| Feature | Description |
|---|---|
| Multiple project connections | Keep separate configurations for devices, gateways, brokers, and services, and select the required connector in each consumer. |
| Connector configuration forms | Set addresses, ports, authentication, and protocol-specific options in dedicated forms. |
| Crestron connection | Configure a processor connection with Host, IPID, Room ID, and Auth Token as required by the system. |
| Retrieve a Crestron Auth Token | Use Get token with processor SSH credentials to retrieve a token and fill the authentication field automatically. |
| Generate a Crestron Auth Token | If token retrieval does not return a token, continue through the editor’s offered token-generation workflow. |
| Crestron Digital commands | Send boolean commands to joins identified by name or number. |
| Crestron Analog commands | Send numeric values such as levels, positions, and setpoints. |
| Crestron Serial commands | Send string commands and text values. |
| Digital True / False | Send an explicit boolean state. |
| Digital Pulse | Send a pulse with configurable duration. |
| Digital Momentary | Transmit press and release states for held commands. |
| Digital Toggle | Invert a boolean value according to the system’s intended command model. |
| Dpad Join Map | Map directions and the center button to independent momentary digital joins. |
| RGB Join Map | Map the red, green, and blue channels to independent analog joins. |
| Crestron feedback | Receive Digital, Analog, and Serial values for labels, controls, modes, and button states. |
| Crestron global joins | Configure project-wide signals for page selection, notifications, datasource refresh, and connection feedback. |
| Web / HTTP connector | Store a service’s base URL and shared request headers in a Web connector. |
| HTTP commands | Execute GET, POST, PUT, PATCH, and DELETE with a target endpoint and a supported request body. |
| HTTP API data | Fetch JSON through a Web datasource and use the result in the interface. |
| WebSocket connection | Connect through WS/WSS and configure the host, port, path, and reconnection behavior. |
| WebSocket sending | Send text or composed JSON messages from element actions. |
| WebSocket JSON reception | Read a selected path from incoming JSON into a datasource, global variable, or page parameter. |
| UDP | Communicate with compatible network devices using UDP datagrams. |
| MQTT connection | Configure the broker, credentials, secure transport, reconnect timeout, and keepalive. |
| MQTT Publish | Publish a command to a selected topic with a payload and Retain setting. |
| MQTT feedback | Receive topic values into variables or structured content through an MQTT datasource. |
| KNX BAOS connection | Configure a BAOS gateway connection; the Product Guide includes a tested BAOS 777 configuration. |
| KNX commands | Write a value to a BAOS Datapoint ID using the appropriate DPT format. |
| KNX data formats | Use supported boolean, percentage, numeric, and string formats, including DPT1, DPT5, and DPT16. |
| KNX feedback | Update variables from datapoints and use them to display equipment state. |
| DoorBird connector | Create separate station connections with host and credentials. Specific control and media workflows require verification of the consuming component and target runtime. |
| AMX connection | Configure authenticated connection, reconnect, keepalive, and status inspection. AMX variable read/write is not yet implemented in the documented version. |
Datasources and JSON filters 16
Documentation| Feature | Description |
|---|---|
| Local JSON data | Create datasources from project files for catalogs, menus, lists, and other structured content. |
| Local test fixtures | Develop display logic and repeated cards with local JSON before a real API or device is available. |
| HTTP datasources | Retrieve data through a Web connector with a configured URL postfix. |
| HTTP polling | Repeat data retrieval automatically at a configured interval in milliseconds. |
| WebSocket datasources | Update structured content from incoming JSON messages without periodic polling. |
| MQTT datasources | Receive structured content from a selected MQTT topic. |
| Datasource attachment | Choose a datasource for an element and configure which fields it consumes. |
| Nested field paths | Read object properties, array items, and nested values from a datasource result. |
| JSON subtree selection | Use Pick to select an object, nested array, or another relevant part of a response. |
| Array filtering | Keep records matching a condition, for example rooms with a particular status. |
| Filter conditions | Use available equality, containment, existence, empty/null, boolean, and inverse checks. |
| Transformation chains | Apply several Pick/Filter steps, with each step operating on the preceding step’s result. |
| Per-consumer filters | Use one datasource on different elements with independent filters while preserving the source data. |
| JSON and step previews | Inspect the data structure and the effect of individual operations while configuring filters. |
| Datasource formatters | Transform an incoming response with a JavaScript function before consuming it. |
| Repeated-card data mapping | Pass each record’s fields into Subpage List parameters, such as room name, identifier, and feedback join. |
JavaScript functions 6
Documentation| Feature | Description |
|---|---|
| Custom project functions | Create named JavaScript functions for transformations beyond the standard configuration tools. |
| Variable formatters | Convert incoming values, coerce types, scale or limit a range, and produce the representation needed by the consumer. |
| Datasource formatters | Normalize API responses, select the appropriate array, and prepare fields for the interface. |
| Predefined formatters | Use built-in choices, including seconds-to-time formatting and numeric/boolean conversions. |
| Display-data logic | Compute labels, format numbers, choose icons, and prepare values for components. |
| Event-driven function invocation | Run a function through a Function action. The documented function contract is synchronous, without imports or external dependencies. |
Live Preview and runtime debugging 21
Documentation| Feature | Description |
|---|---|
| Browser Live Preview | Open the running project from VS Code and test the actual interface interactions. |
| Preview saved changes | Return to Live Preview after editing to inspect updated content and behavior. |
| Navigation testing | Exercise page routing, Home, Back, and overlay opening. |
| Logic testing | Test actions, variables, parameters, appearance modes, and dynamic bindings in the running interface. |
| Connected equipment testing | Send real commands and receive real feedback in Live Preview when the required devices, services, and network are available. |
| F5 preview launch | Use Start AVS Live Preview through VS Code Run and Debug. |
| Local preview URL | Open preview on the development computer using the address reported by the server. |
| Network preview URL | Open the interface on a phone, panel, or another computer through a reachable LAN address. |
| Device-size presets | Inspect layouts at panel, phone, tablet, and desktop dimensions. |
| Custom device dimensions | Add a custom width and height for a specific target screen. |
| Device rotation | Check the layout in portrait and landscape orientations. |
| AVstudio DevTools | Use the dedicated AVstudio panel in Chrome DevTools in the browser session launched for Live Preview. |
| Global-variable monitor | Inspect global variable names, types, and current values while the application runs. |
| Variable filtering in DevTools | Find variables by name when debugging a larger project. |
| Runtime connector monitor | Inspect connection types, statuses, details, and reported errors. |
| Crestron Digital emulation | Inject a test boolean feedback value on a join to check states and indicators. |
| Crestron Analog emulation | Inject numeric feedback to check controls, levels, and other value bindings. |
| Crestron Serial emulation | Inject string feedback to check labels, names, and named appearance modes. |
| Preview logging levels | Choose Silent, Error, Warn, Info, or Debug for the required amount of diagnostic output. |
| Separate production logging | Configure the exported application’s log level independently of Live Preview logging. |
| Request and error inspection | Use the browser Console and Network tools to inspect runtime errors, destinations, payloads, and response statuses. |
Project health and recovery 10
Documentation| Feature | Description |
|---|---|
| Project Health Check | Check project structure, parsed data, and references before runtime testing or building. |
| Required-file checks | Find missing configuration, global variables, Global Slots, and required folders. |
| JSON validation | Find empty or invalid JSON documents among the checked project entities. |
| Reference checks | Find missing page, connector, datasource, and local-asset targets in inspected references. |
| File-location checks | Identify recognized entity files stored in an inappropriate project folder. |
| Join Map validation | Find duplicate maps or mappings incompatible with a component’s button or RGB-channel targets. |
| Crestron feedback-token validation | Report invalid feedback types, names, namespaces, and missing required Crestron connectors. |
| Problems-panel diagnostics | Navigate from an AVstudio diagnostic to its file or issue through VS Code’s standard Problems panel. |
| Generate missing project structure | Use a Quick Fix or Generate missing project files to restore standard entries. This does not recover deleted custom pages. |
| Health-check logs | Inspect check activity, project-root discovery, and check failures through Output → AVStudio Health. |
AI assistance and MCP 12
Documentation| Feature | Description |
|---|---|
| Compatible AI assistants | Use an assistant with local project-source access and supported AVstudio editor tools. |
| Generated AVstudio Guide | Generate a local skill describing the file structure, supported properties, schemas, and editing rules. |
| Built-in MCP server | Expose current project context and supported editor operations to a compatible assistant. |
| Copy Prompt setup | Copy MCP connection instructions from the editor and provide them to your chosen compatible assistant. |
| Project snapshots for AI | Give an assistant structured project information through get_project_snapshot. |
| Diagnostics for AI | Read current project diagnostics through get_diagnostics to investigate problems. |
| Page and editor context for AI | Provide page parameters and open-editor context so the assistant can inspect the intended part of the project. |
| AI icon tools | Expose tools for discovering and activating packs and opening Icon Explorer. |
| Allowlisted editor commands | Invoke supported editor commands through MCP’s allowlist; availability depends on the extension version and assistant client. |
| AI-assisted interface creation | Ask an assistant to create pages and components, apply styling, configure actions, and edit logic within the supported project model. |
| Combined visual and AI editing | Open AI-edited results in the visual editor and continue refining them through normal component properties. |
| MCP diagnostics | Inspect logs, open settings, and restart the server through the AVstudio MCP menu. |
Source files, Git, and collaboration 10
Documentation| Feature | Description |
|---|---|
| Open project files | Work with readable JSON, HTML, CSS, JavaScript, and associated assets in a local folder structure. |
| Local backups | Keep copies of editable source using ordinary file-backup tools. |
| Git history | Track project changes using standard Git tools and VS Code Source Control. |
| GitHub and other Git hosts | Store a repository in your chosen service and use your team’s collaboration process. |
| Development branches | Develop new screens and changes on separate branches. |
| Source diffs | Compare file revisions to inspect action, binding, configuration, and styling changes. |
| Visual page diffs | Open .page Git diffs in the visual editor to compare original and modified page appearances. |
| Merging changes | Use standard Git merge and review workflows, then verify references and interface behavior. |
| Editable project handoff | Give a colleague the source pages, data, connectors, functions, themes, and assets needed to continue editing. |
| Shared control-system repository | Keep AVstudio UI beside other control-system code in one workspace or repository. |
Project settings and builds 7
Documentation| Feature | Description |
|---|---|
| Project-wide configuration | Configure the project name, start page, active theme, splash image, archive name, and production log level. |
| Build Project | Package the interface as a portable HTML5 application for the next delivery step. |
| ZIP output | Generate an application archive for a suitable HTML5 host or runtime with the appropriate deployment/import process. |
| CH5Z output | Generate a package for a compatible Crestron deployment workflow; select the format before building. |
| Archive naming | Set the output archive’s base name independently of its format. |
| Build metadata | Include extension version, project, platform, build time, and other release details in the archive. |
| Release preservation | Keep completed archives with their corresponding source revisions. A subsequent build replaces the previous output in build/. |
Documentation and Community 3
Documentation| Feature | Description |
|---|---|
| Documentation access | Use installation, design, component, logic, integration, preview, and build guides and reference material. Read the documentation |
| AVstudio Community | Ask questions, discuss projects, and exchange experience with other users. Join AVstudio Community |
| Community support | Ask questions and discuss implementation challenges with other AVstudio users. |
No features match your search. Try another term or clear the search.