Product Updates

DatoCMS changelog for new features and general improvements
UI ImprovementContent Management API
More explicit presentation settings for records
February 21st, 2022

In DatoCMS it has always been possible to specify a "title field" on models. Doing so has two effects:

  • Within the dashboard, the title field will be used to show a preview of the record;

  • If no explicit SEO title is specified on the record, the value of the title field will be used as the SEO title as well.

Given its convenience, and based on your feedback, we decided to extend the concept by allowing you to specify two more "special" fields:

  • Image preview field: will always be used as a representative image of the record within the dashboard. If the record does not offer an explicit image to be used as SEO image, the image preview field will also be used for this purpose;

  • Excerpt field: if there is no explicit SEO description for a record, the value of this field (truncated to a maximum of 200 characters) will be used.

All three settings are now in a separate "Presentation" tab in the model settings:

Content Delivery API
Locale fallbacks and filtering available on CDA
February 18th, 2022

We have improved various aspects of localization in the GraphQL API, which were common sources of confusion/friction:

  • Filter records by available available localizations;

  • Get the localizations available for a record;

  • You can specify a number of fallback locales when fetching fields content.

For all the nitty-gritty details, take a look at the updated doc page!

Plugins
New plugin hooks available in our SDK
February 3rd, 2022

Following your requests, we added a couple of new hooks to the Plugin SDK:

  • Form Outlets let you customize the area above each record's form. This hook can also be used in "ghost mode" — that is, with no visible UI — to add custom logic to the form in a reliable way (the Record auto-save plugin is a great example of that);

  • With plugins it is now possible to add custom marks and styles to Structured Text fields!

Here's a sneak peek of the latter feature:

Integrations
Remix framework fully supported!
February 2nd, 2022

Given the booming interest in Remix — which is totally well deserved — we decided to invest some time to better integrate with it:

  • A step-by-step guide to introducing DatoCMS into a Remix project is available;

  • A Starter Project, complete with preview mode, is now available on our Marketplace;

  • The react-datocms package offers a new helper specifically designed to work with meta tags in Remix.

Happy hacking!

Integrations
React components update!
February 1st, 2022

Based on your feedback, we recently released a new version of the react-datocms NPM package to improve our <Image /> component.

It now offers:

  • multiple layout modes (ie. layout=fill is great for background images!)

  • a new onLoad callback

  • a new usePlaceholder option to disable the blurred image placeholder

We also removed the IntersectionObserver polyfill. Since iOS 12.2 (March 2019) it's supported natively in all modern browsers, and the polyfill was accounting for 25% of the package size. Of course you can add a polyfill on your side if you still need it!

UI Improvement
New built-in presentation modes: Radio group, Checkbox Group and Select inputs!
January 31st, 2022

By popular demand, we decided to add a couple new ways of presenting some fields:

Boolean fields

In addition to the usual "switch" input, you can now present a boolean field as a Radio group or Select input. You can tweak the way your field will be visible to your editors in the Presentation settings, and specify the text that will be associated with both the true and false value.

String fields

Similarly, you can also present single-line text fields as a Radio group or Select input. The main difference from boolean fields is that you can specify more than two possible options, plus the string value associated with every option.

JSON fields

If you need to store multiple strings in a field, you can now use the Multi-select input and Checkbox Group on JSON fields. Again, you can specify the different options that will be visible to editors, and the relative value that will be stored in the field itself.

We could have easily released these new presentation modes as plugins, but we thought they're frequent enough to deserve their permanent place in DatoCMS. ♥️

New
New usage reports available on every project
January 27th, 2022

Based on feedback, we added two new reports to the "Project Usages" section of every project:

  • Top transformations by traffic: this shows your assets sorted by consumed bandwidth, complete with any Imgix transformation parameter. It can be helpful ie. to find places where you did not add any optimization parameters in your frontend, making your pages slower to download than needed.

  • Top requested transformations: similar to the above, but it sorts asset by number of requests rather than consumed bandwidth.

As always, we remind that every report is updated every minute, but they’re not to be considered 100% accurate, and only serve for qualitative analysis.

UI Improvement
Link and date(time) fields can now be set as titles
January 27th, 2022

So far only Single-line Text fields could be set as the title field for a record... well it is now possible to also use Link fields, Date fields and DateTime fields.

It's a particularly useful feature when you have ie. "event" records, where a date might be the most important bit to highlight from a record!

Images API
AVIF support + IPTC Passthrough
January 27th, 2022

AVIF is now the default format across all accounts if you use auto=format. AVIF format can also be forced as the output format with fm=avif. File sizes should drop by nearly 60% compared to JPEG & 35% compared to WebP, so that's awesome news for every project.

We've also made available the iptc=allow parameter to allow IPTC metadata (which contain attribution info) to pass through from the original JPG image to the transformed image.

UI Improvement
Automatically create modular blocks if only one type required
December 23rd, 2021

In a modular content field, if you specify only one type of required block and you add a validation requiring a minimum number of blocks, like here for example:

We go ahead and by default create the required empty blocks for you when you create a new record, like this:

So your editors will see from the get go all the fields that they will need to populate and save a few clicks!