Skip to content

Migrating from Static CMS

Sveltia CMS provides partial compatibility with Static CMS, an archived fork of Netlify CMS. Since Static CMS was archived over a year ago, we don’t plan to implement additional compatibility beyond what’s listed below. However, we may still adopt some of their features that we find useful.

Compatibility

Static CMS made some breaking changes while Sveltia CMS mostly follows Netlify/Decap CMS, so you should review your configuration carefully.

Configuration Options

  • Sveltia CMS supports the sortable_fields, view_filters and view_groups options with the new default option. We still support the legacy Netlify/Decap CMS format as well, so you can use either format for these options.
  • Directory navigation in the Asset Library is partially supported in Sveltia CMS. If you define collection-specific media_folders, these folders will be displayed in the Asset Library and Select File/Image dialog. We plan to implement the display of subfolders within a configured folder in Sveltia CMS 2.0. We don’t plan to support the folder_support and display_in_navigation options for media_library; subfolders will be displayed with no configuration. (#301)
  • The logo_link global option will not be supported. Use display_url or site_url instead.
  • The yaml global option will not be supported, as Sveltia CMS does not expose underlying yaml library options for forward compatibility reasons. However, we do have some data output options, including YAML indentation and quotes.

I18n Support

  • The enforce_required_non_default i18n option will not be supported. Sveltia CMS enforces required fields in all locales by default. However, the initial_locales i18n option allows users to disable non-default locales if needed. Developers can also specify a subset of locales with the required field option, e.g. required: [en].

Widgets

  • The date/time format options for the DateTime widget are not compatible since Static CMS switched to date-fns while Decap CMS and Sveltia CMS have replaced Moment.js with Day.js. Update your formats accordingly.
  • The KeyValue widget is implemented in Sveltia CMS with the same options.
  • The UUID widget is also implemented, but with different options.
  • The prefix and suffix options for the Boolean, Number and String widgets are implemented as before_input and after_input in Sveltia CMS, respectively. Our prefix and suffix options for the String widget are literally a prefix and suffix to the value.
  • The multiple option for the File and Image widgets is supported in Sveltia CMS, along with the min and max options.
  • The breaking change to the List widget doesn’t apply to Sveltia CMS. You must use the field (singular) option to produce a single subfield with no name output.

Customization

  • CMS.registerIcon() will not be supported, as Sveltia CMS includes the Material Symbols font for custom collection icons that doesn’t require manual registration.

Released under the MIT License.