@sveltia/cms 0.93.2 → 0.94.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -2,7 +2,9 @@
2
2
 
3
3
  Sveltia CMS is a Git-based lightweight headless CMS under active development as a modern, powerful, quick replacement for Netlify CMS and Decap CMS. In some simple cases, migration is as easy as a single line of code change, although we are still working on improving compatibility.
4
4
 
5
- The free, open source alternative/successor to Netlify/Decap CMS is now in public beta, turbocharged with great UX, performance, i18n support and so many more enhancements.
5
+ The free, open source alternative to Netlify/Decap CMS is now in public beta, turbocharged with great UX, performance, i18n support and so many more enhancements.
6
+
7
+ Welcome to the only Netlify CMS successor you can trust!
6
8
 
7
9
  ![Git-based headless CMS made right](https://raw.githubusercontent.com/sveltia/sveltia-cms/main/docs/screenshot-1.webp?20250405)<br>
8
10
 
@@ -134,7 +136,7 @@ While we fix reported bugs as quickly as possible, usually within 24 hours, our
134
136
 
135
137
  - Ensuring substantial [compatibility with Netlify/Decap CMS](#current-limitations)
136
138
  - Tackling as many [Netlify/Decap CMS issues](https://github.com/decaporg/decap-cms/issues) as possible
137
- - So far, 240+ issues, or 500+ if including duplicates, have been effectively solved in Sveltia CMS (Yes, you read it right)
139
+ - So far, 240+ issues, or 505+ if including duplicates, have been effectively solved in Sveltia CMS (Yes, you read it right)
138
140
  - Target:
139
141
  - 250 issues, or 500 if including duplicates, by GA — Almost there!
140
142
  - 400 issues, or 800 if including duplicates, in the future 💪
@@ -166,8 +168,9 @@ Note: This lengthy section compares Sveltia CMS with both Netlify CMS and Decap
166
168
  - Users can easily manage content on-the-go with mobile and tablet support.[^18][^215]
167
169
  - For a smoother experience, we even go beyond responsive design with optimized navigation, [view transitions](https://developer.chrome.com/docs/web-platform/view-transitions), larger buttons, and other tweaks. However, there are still rough edges, and we are working to fully optimize the app for small screens and touch devices.
168
170
  - If you’re already signed in on your desktop, open the Account menu in the top right corner of the CMS, click Sign In with Mobile, and scan the QR code for passwordless sign-in. Your settings will be automatically copied.
171
+ - Sveltia CMS loads all entries at startup. We don’t support backends that cannot retrieve multiple entries at once. This deliberate design choice improves performance and UX by enabling instant full-text searches, fast and powerful relation fields, and linking between assets and entries.
169
172
  - Made with [Svelte](https://svelte.dev/), not React, means we can spend more time on UX rather than tedious state management. It also allows us to avoid common fatal React application crashes.[^113][^129] Best of all, Svelte offers great performance.
170
- - Other crashes in Netlify/Decap CMS are also irrelevant to us, making Sveltia CMS much more stable.[^112][^203][^204][^260][^265]
173
+ - Other crashes in Netlify/Decap CMS are also irrelevant to us, making Sveltia CMS much more stable.[^112][^203][^204][^260]
171
174
  - We build [our own UI component library](https://github.com/sveltia/sveltia-ui), including custom dialogs, to ensure optimal usability without compromising accessibility.[^196][^205][^206][^207][^208][^209][^210]
172
175
  - Users can personalize the application with various settings, including appearance and language. Developer Mode can also be enabled.
173
176
  - Never miss out on the latest features and bug fixes by being notified when an update to the CMS is available.[^31] Then update to the latest version with a single click.[^66]
@@ -199,7 +202,7 @@ Note: This lengthy section compares Sveltia CMS with both Netlify CMS and Decap
199
202
  - Uploading files can be done with drag and drop.[^20]
200
203
  - Users can upload multiple files at once to the Asset Library.
201
204
  - Users can delete multiple entries and assets at once.
202
- - Instant full-text search with results sorted by relevance helps you find entries faster.
205
+ - Instant full-text search with results sorted by relevance helps you find entries faster. In Netlify/Decap CMS, you often won’t get the results you expect.
203
206
  - Some [keyboard shortcuts](#using-keyboard-shortcuts) are available for faster editing.
204
207
 
205
208
  ### Better accessibility
@@ -344,7 +347,8 @@ Sveltia CMS has been built with a multilingual architecture from the very beginn
344
347
  - Setting the collection `path` doesn’t affect the entry slugs stored with the Relation widget.[^137]
345
348
  - Entry slugs are [localizable](#localizing-entry-slugs).[^80]
346
349
  - Entry listing
347
- - [Default sort field and direction](#specifying-default-entry-sort-field-and-direction) can be specified.[^172]
350
+ - The [default sort field and direction](#specifying-default-entry-sort-field-and-direction) can be specified.[^172]
351
+ - The default filtering and grouping can also be specified in the same way as with [Static CMS](https://staticjscms.netlify.app/docs/decap-migration-guide#view-filters).[^269]
348
352
  - Sorting entries by a DateTime field works as expected.[^110]
349
353
  - Entry grouping and sorting can work together. For example, it’s possible to group by year and then sort by year if configured properly.
350
354
  - The `sortable_fields` option accepts a special `slug` value to allow sorting by entry slugs.
@@ -404,6 +408,7 @@ Sveltia CMS has been built with a multilingual architecture from the very beginn
404
408
  - DateTime field values in ISO 8601 format are stored in native date/time format instead of quoted strings when the data output is TOML.[^147]
405
409
  - Provides JSON/YAML format options as part of the [data output options](#controlling-data-output), including indentation and quotes.[^155][^9]
406
410
  - The `yaml_quote` collection option added in [v0.5.10](https://github.com/sveltia/sveltia-cms/releases/tag/v0.5.10) is now deprecated and will be removed in v1.0.0. `yaml_quote: true` is equivalent to `quote: double` in the new YAML format options.
411
+ - Front matter injection is impossible through the `body` field.[^268]
407
412
 
408
413
  ### Better widgets
409
414
 
@@ -569,12 +574,13 @@ Sveltia CMS supports all the [built-in widgets](https://decapcms.org/docs/widget
569
574
  - Enhancements to [`CMS.registerEditorComponent()`](https://decapcms.org/docs/custom-widgets/#registereditorcomponent):
570
575
  - A component definition accepts the `icon` property. Developers can specify a Material Symbols icon name just like [custom collection icons](#using-a-custom-icon-for-a-collection).
571
576
  - The `fromBlock` function can be omitted if the `pattern` regex contains [named capturing groups](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Regular_expressions/Named_capturing_group) for the values.
577
+ - Inline components are supported.[^267]
572
578
 
573
579
  ### Better localization
574
580
 
575
581
  - The application UI locale is automatically selected based on the preferred language set with the browser.[^132] Users can also change the locale in the application settings. Therefore, the `locale` configuration option is ignored and `CMS.registerLocale()` is not required.
576
582
  - The List widget’s `label` and `label_singular` are not converted to lowercase, which is especially problematic in German, where all nouns are capitalized.[^98]
577
- - Long menu item labels, especially in non-English locales, don’t overflow the dropdown container.[^117]
583
+ - Long menu item labels, especially in non-English locales, don’t overflow the dropdown container.[^117][^265]
578
584
 
579
585
  ## Compatibility
580
586
 
@@ -618,7 +624,7 @@ These Netlify/Decap CMS features are not yet implemented in Sveltia CMS. We are
618
624
  - [Cloudinary](https://decapcms.org/docs/cloudinary/) and [Uploadcare](https://decapcms.org/docs/uploadcare/) media libraries ([#4](https://github.com/sveltia/sveltia-cms/discussions/4))
619
625
  - LineString and Polygon types for the [Map](https://decapcms.org/docs/widgets/#map) widget
620
626
  - [Custom widgets](https://decapcms.org/docs/custom-widgets/)
621
- - [Custom editor components](https://decapcms.org/docs/custom-widgets/#registereditorcomponent): Support for preview, widgets with complex values (Code with `output_code_only: false`, Hidden, KeyValue, List, Object, Select/Relation with `multiple: true`), as well as the `default` field option, [multiline components](https://github.com/sveltia/sveltia-cms/issues/410) and [inline components](https://github.com/sveltia/sveltia-cms/issues/460)
627
+ - [Custom editor components](https://decapcms.org/docs/custom-widgets/#registereditorcomponent): Support for preview, widgets with complex values (Code with `output_code_only: false`, Hidden, KeyValue, List, Object, Select/Relation with `multiple: true`), the `default` field option and [multiline components](https://github.com/sveltia/sveltia-cms/issues/410)
622
628
  - [Custom preview templates](https://decapcms.org/docs/customization/#registerpreviewtemplate) ([#51](https://github.com/sveltia/sveltia-cms/issues/51))
623
629
  - [Event hooks](https://decapcms.org/docs/registering-events/) ([#167](https://github.com/sveltia/sveltia-cms/issues/167))
624
630
 
@@ -637,7 +643,7 @@ Sveltia CMS provides partial compatibility with [Static CMS](https://github.com/
637
643
 
638
644
  - Configuration options
639
645
  - Static CMS made [some breaking changes](https://staticjscms.netlify.app/docs/decap-migration-guide) to view filters/groups, List widget, etc. while Sveltia CMS follows Netlify/Decap CMS, so you should review your configuration carefully.
640
- - The `default` option for sortable fields is [implemented in Sveltia CMS](#specifying-default-sort-field-and-direction).
646
+ - The [`sortable_fields`](#specifying-default-sort-field-and-direction), `view_filters` and `view_groups` options with the new `default` option are supported in Sveltia CMS.
641
647
  - Directory navigation in the Asset Library is partially supported in Sveltia CMS. If you define [collection-specific `media_folder`s](#using-a-custom-media-folder-for-a-collection), these folders will be displayed in the Asset Library and Select File/Image dialog. Display of subfolders within a configured folder will be implemented before GA. 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](https://github.com/sveltia/sveltia-cms/issues/301))
642
648
  - The `logo_link` global option will not be supported. Use `display_url` or `site_url` instead.
643
649
  - The `yaml` global option will not be supported, as Sveltia CMS doesn’t expose the underlying `yaml` library options for forward compatibility reasons. However, we do have some [data output options](#controlling-data-output), including YAML indentation and quotes.
@@ -1221,7 +1227,7 @@ media_libraries:
1221
1227
 
1222
1228
  ### Editing site deployment configuration files
1223
1229
 
1224
- Sveltia CMS allows users to edit files without extensions. Examples include `_headers` and `_redirects`, which are used by some static site hosting providers, such as [Netlify](https://docs.netlify.com/routing/redirects/), [GitLab Pages](https://docs.gitlab.com/user/project/pages/redirects/) and [Cloudflare Pages](https://developers.cloudflare.com/pages/configuration/redirects/). Since the `body` field is saved without the field name when using the default `yaml-frontmatter` format, you can use the following configuration to edit these files in the Content Editor:
1230
+ Sveltia CMS allows users to edit files without extensions. Examples include `_headers` and `_redirects`, which are used by some static site hosting providers, such as [Netlify](https://docs.netlify.com/routing/redirects/), [GitLab Pages](https://docs.gitlab.com/user/project/pages/redirects/) and [Cloudflare Pages](https://developers.cloudflare.com/pages/configuration/redirects/). Since the `body` field is [saved without the field name](#understanding-exceptions-in-data-output) when using the default `yaml-frontmatter` format, you can use the following configuration to edit these files in the Content Editor:
1225
1231
 
1226
1232
  ```yaml
1227
1233
  collections:
@@ -1861,7 +1867,7 @@ This software is provided “as is” without any express or implied warranty. W
1861
1867
 
1862
1868
  [^81]: Netlify/Decap CMS [#4645](https://github.com/decaporg/decap-cms/issues/4645)
1863
1869
 
1864
- [^82]: Netlify/Decap CMS [#6500](https://github.com/decaporg/decap-cms/issues/6500)
1870
+ [^82]: Netlify/Decap CMS [#5593](https://github.com/decaporg/decap-cms/issues/5593), [#6500](https://github.com/decaporg/decap-cms/issues/6500)
1865
1871
 
1866
1872
  [^83]: Netlify/Decap CMS [#6508](https://github.com/decaporg/decap-cms/issues/6508)
1867
1873
 
@@ -1931,7 +1937,7 @@ This software is provided “as is” without any express or implied warranty. W
1931
1937
 
1932
1938
  [^116]: Netlify/Decap CMS [#3431](https://github.com/decaporg/decap-cms/issues/3431)
1933
1939
 
1934
- [^117]: Netlify/Decap CMS [#3562](https://github.com/decaporg/decap-cms/issues/3562), [#6215](https://github.com/decaporg/decap-cms/issues/6215), [#7479](https://github.com/decaporg/decap-cms/issues/7479)
1940
+ [^117]: Netlify/Decap CMS [#3562](https://github.com/decaporg/decap-cms/issues/3562), [#6215](https://github.com/decaporg/decap-cms/issues/6215), [#6605](https://github.com/decaporg/decap-cms/issues/6605), [#6355](https://github.com/decaporg/decap-cms/issues/6355), [#7479](https://github.com/decaporg/decap-cms/issues/7479)
1935
1941
 
1936
1942
  [^118]: Netlify/Decap CMS [#7267](https://github.com/decaporg/decap-cms/issues/7267)
1937
1943
 
@@ -2005,7 +2011,7 @@ This software is provided “as is” without any express or implied warranty. W
2005
2011
 
2006
2012
  [^153]: Netlify/Decap CMS [#7347](https://github.com/decaporg/decap-cms/issues/7347)
2007
2013
 
2008
- [^154]: Netlify/Decap CMS [#1449](https://github.com/decaporg/decap-cms/issues/1449), [#1988](https://github.com/decaporg/decap-cms/issues/1988)
2014
+ [^154]: Netlify/Decap CMS [#1449](https://github.com/decaporg/decap-cms/issues/1449), [#1988](https://github.com/decaporg/decap-cms/issues/1988), [#5552](https://github.com/decaporg/decap-cms/issues/5552)
2009
2015
 
2010
2016
  [^155]: Netlify/Decap CMS [#5870](https://github.com/decaporg/decap-cms/issues/5870)
2011
2017
 
@@ -2227,6 +2233,12 @@ This software is provided “as is” without any express or implied warranty. W
2227
2233
 
2228
2234
  [^264]: Netlify/Decap CMS [#7557](https://github.com/decaporg/decap-cms/issues/7557)
2229
2235
 
2230
- [^265]: Netlify/Decap CMS [#7550](https://github.com/decaporg/decap-cms/issues/7550), [#7562](https://github.com/decaporg/decap-cms/issues/7562)
2236
+ [^265]: Netlify/Decap CMS [#6215](https://github.com/decaporg/decap-cms/issues/6215)
2231
2237
 
2232
2238
  [^266]: Netlify/Decap CMS [#3821](https://github.com/decaporg/decap-cms/issues/3821), [#4369](https://github.com/decaporg/decap-cms/issues/4369)
2239
+
2240
+ [^267]: Netlify/Decap CMS [#5065](https://github.com/decaporg/decap-cms/issues/5065) — The issue was closed, but it’s still not working as expected in Decap CMS.
2241
+
2242
+ [^268]: Netlify/Decap CMS [#4945](https://github.com/decaporg/decap-cms/issues/4945)
2243
+
2244
+ [^269]: Netlify/Decap CMS [#7568](https://github.com/decaporg/decap-cms/issues/7568)