Accessibility Compliance
SurveyJS libraries meet a variety of WCAG and Section 508 standards. Run AXE® Validation to assess this demo’s accessibility level.

Expert Preset for Survey Creator UI

Edit in →

This demo showcases the Expert UI preset, which provides full access to all configuration options. With its comprehensive feature set, the interface is more complex, but offers maximum control over every aspect of the Survey Creator UI. The preset includes the JSON Editor tab for manual survey schema editing, and the Property Grid exposes the full set of properties for detailed customization.

Apply the Expert UI Preset

To apply the Expert preset, use the following code:

// Modular applications
import { UIPreset } from "survey-creator-core";
import { Expert } from "survey-creator-core/ui-presets";

// ...
// Omitted: `SurveyCreatorModel` initialization
// ...
const expertPreset = new UIPreset(Expert);
expertPreset.applyTo(creator);
<!-- Classic script applications -->
<head>
  <!-- ... -->
  <script src="https://unpkg.com/survey-creator-core/ui-presets/index.min.js"></script>
  <!-- ... -->
</head>
<body>
  <script>
    // ...
    // Omitted: `SurveyCreatorModel` initialization
    // ...
    const expertPreset = new SurveyCreatorCore.UIPreset(SurveyCreatorUIPreset.Expert);
    expertPreset.applyTo(creator);
  </script>
</body>

Configure the Themes and Translations Tabs

As with the Advanced UI preset, the Expert preset enables the Themes and Translations tabs. These tabs require additional configuration for full functionality.

Themes Tab

SurveyJS includes a set of predefined UI themes. By default, users can customize only the Default Light theme. To make additional themes available in the Themes tab, use the following code:

View Code
// Modular applications
import SurveyTheme from "survey-core/themes"; // An object that contains all theme configurations
import { registerSurveyTheme } from "survey-creator-core";

registerSurveyTheme(SurveyTheme);
<!-- Classic script applications -->
<head>
  <!-- ... -->
  <script src="https://unpkg.com/survey-core/themes/index.min.js"></script>
  <!-- ... -->
</head>
<body>
  <script>
    SurveyCreatorCore.registerSurveyTheme(SurveyTheme);
  </script>
</body>

This configuration allows survey authors to create custom themes based on predefined ones and export or import them as JSON objects. To enable saving custom themes to a database or another storage, refer to the following topic:

Save and Load Custom Themes

Translations Tab

The Translations tab allows users to localize surveys. For full functionality, you need to load the required localization dictionaries. You can include all languages or only selected ones.

View Code
// Modular applications
// Option 1: All languages
import "survey-core/survey.i18n";

// Option 2: Individual languages
import "survey-core/i18n/french";
import "survey-core/i18n/german";
import "survey-core/i18n/italian";
<!-- Classic script applications -->
<head>
  <!-- Option 1: All languages -->
  <script src="https://unpkg.com/survey-core/survey.i18n.min.js"></script>

  <!-- Option 2: Individual languages -->
  <script src="https://unpkg.com/survey-core/i18n/french.min.js"></script>
  <script src="https://unpkg.com/survey-core/i18n/german.min.js"></script>
  <script src="https://unpkg.com/survey-core/i18n/italian.min.js"></script>
  <!-- ... -->
</head>

See Also

Basic UI Preset Demo

Advanced UI Preset Demo

UI Preset Editor Demo

UI Preset Editor Documentation

Your cookie settings

We use cookies to make your browsing experience more convenient and personal. Some cookies are essential, while others help us analyse traffic. Your personal data and cookies may be used for ad personalization. By clicking “Accept All”, you consent to the use of all cookies as described in our Terms of Use and Privacy Statement. You can manage your preferences in “Cookie settings.”

Your renewal subscription expires soon.

Since the license is perpetual, you will still have permanent access to the product versions released within the first 12 month of the original purchase date.

If you wish to continue receiving technical support from our Help Desk specialists and maintain access to the latest product updates, make sure to renew your subscription by clicking the "Renew" button below.

Your renewal subscription has expired.

Since the license is perpetual, you will still have permanent access to the product versions released within the first 12 month of the original purchase date.

If you wish to continue receiving technical support from our Help Desk specialists and maintain access to the latest product updates, make sure to renew your subscription by clicking the "Renew" button below.