Scrivito JS SDK 1.33.0 Released

Featuring placeholders for data items

Weaving data into website content using placeholders

Editors can now insert placeholders representing specific pieces of data into textual website content, e.g., for personalization purposes. When the website is then visited, these placeholders are dynamically replaced with data provided by the application. This makes it possible to complement CMS-based content with information related to the current user, account or context, i.e., names, email addresses, statuses, and the like.

For making such data available, the Scrivito SDK now offers the Scrivito.provideDataItem API.

Introducing data locators

This release introduces the new datalocator attribute type that enables editors to embed dynamic functionality into pages or widgets, i.e., integrate logic that previously required the help of a developer.

Data locators can be used in many ways. This release features the initial set of APIs for DataLocators that we are going to expand in the course of the next few releases. We are also working on further examples to show you what they are capable of.

Note that these APIs are still considered beta, meaning that we will try to keep them stable. However, we still may need to introduce some smaller breaking changes. For now, let’s address two of the many use cases for data locators, dynamic lists and personalization.

Dynamic lists

One of the use cases for data locators is building “list widgets” that enable editors to create dynamic lists of CMS content. When used inside such a list widget, a data locator allows you to choose the type of content the list should contain. For example, you could add a widget with a datalocator attribute to the overview page of a blog to create a dynamic list that displays pages of the “Blog Post” type.

Data locators also support filtering. If a website has multiple kinds of blogs, for example, you could specify that the list on the “Tech Blog” overview page should only include blog posts that have been tagged as “tech”.

Furthermore, data locators also let you limit the number of results in order to specify, for example, that at most ten blog posts are to be shown.

And finally, data locators support sorting, so you could have the blog overview start with the most recently published posts.


The new datalocator type can also be used to implement functionality that makes use of “external” data sources rather than CMS content, e.g., data that is provided via the new provideDataItem API.

This enables editors to build widgets for website personalization, e.g., widgets that display content depending on specific conditions.

As an example, with the help of such a widget, you would be able to choose “Logged-in user” as the data source and then apply the “admin” is “true” filter to make a particular part of the content only visible if the user is an administrator.

Further improvements

  • Custom icons for the Content Browser

    Locating and browsing assets of a specific type can now be made easier for editors.

    Developers can now place any icon in the Content Browser filter section, meaning that providing visual clues is no longer limited to the predefined icons. See the API documentation for details.

  • Hot reloading of widgets

    The support for “Hot Module Replacement (HMR)” in Vite and “Hot reloading” in Parcel has been improved so that they now also work for widgets.

  • Fixed link editor

    Adding a new HTML link to text that already contains a link no longer causes nested or empty link tags.

Thank you for using Scrivito!

More great blog posts from Andreas Viebke

  • Scrivito Enterprise CMS - Product Illustration

    Scrivito JS SDK 1.42.0 RC 1 Released

    Interface Builder improvements DataScope#limit() API method The new DataScope#limit() method determines the maximum number of data items a DataScope may contain. It returns either a number indicating this limit, or undefined if no limit is set. Introducing Scrivito.currentLanguage()...

  • Scrivito Enterprise CMS - Product Illustration

    Scrivito JS SDK 1.41.0 Released

    Interface Builder improvements Accessing a data scope from the current data It is now possible to access a DataScope from the current data using the new Scrivito.useData hook (which supersedes the Scrivito.useDataItem hook). The new hook always returns a DataScope . In order to check whether this...

  • Editing Interface Alignment with Dartagnan

    For an improved overall user experience, we’ve aligned the user interface design of Scrivito with that of our email builder Dartagnan. We wanted to create a consistent look and feel for our customers working with these cloud products from JustRelate. The adjustments we made are geared towards...

  • Scrivito Enterprise CMS - Product Illustration

    Scrivito JS SDK 1.40.0 Released

    Improvements Intermediately rendered components during loading time Scrivito.provideComponent now lets you give proper feedback to the visitor in cases where the actual component that is provided requires some time to load and render itself. This usually short time gap can now be bridged by...

  • Scrivito Enterprise CMS - Product Illustration

    Scrivito JS SDK 1.39.0 Released

    Improvements Enhanced data classes The Scrivito SDK now offers all attributes of a data class as placeholders for its instances, unless configured otherwise via the editing configuration. > As a developer using > Scrivito.provideDataClass > to load external data, you can now also return IDs of...

  • Bienvenue sur Scrivito !

    Latest updates to

    Bienvenue sur Scrivito ! For all you French-speaking users, the Scrivito editing interface is now also available in your language. In addition to dialogs and buttons in French, input fields for page and widget properties have support for locale-specific calendar labels and French number...

  • Scrivito Enterprise CMS - Product Illustration

    Scrivito JS SDK 1.38.0 Released

    Improvements Accessing the current user’s picture The Scrivito.currentEditor API now seamlessly integrates with IAM, allowing developers to access the picture URL associated with the current editor’s IAM profile. Easier attribute type migration There are situations in which a developer needs to...

  • Creating and Linking a Details Page

    Latest updates to

    > After introducing details pages for data items in version 1.36.0 of the Scrivito SDK, the editing interface now offers you to create such a page for a given data class directly from within a data item. If, for example, you have a card widget in your data list widget, and this card widget has a...

  • Scrivito Enterprise CMS - Product Illustration

    Scrivito JS SDK 1.37.0 Released

    Improvements Updating data items using custom logic By defining the update callback of Scrivito.provideDataItem , you can now smoothly update data items using your own logic. This gives you greater control and flexibility in managing your data within your Scrivito app. Prerendering fails early...

  • Scrivito Enterprise CMS - Product Illustration

    Scrivito JS SDK 1.36.1 Bugfix Release

    This release fixes a bug found in version 1.36.0 of the Scrivito JS SDK: Under certain conditions, the renderChild prop of Scrivito.ChildListTag received an argument that was not a child object. This could lead to unexpected app crashes. We apologize for any inconvenience this may have caused!