@sveltia/cms 0.77.2 → 0.78.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 +22 -10
- package/dist/sveltia-cms.js +204 -204
- package/dist/sveltia-cms.js.map +1 -1
- package/dist/sveltia-cms.mjs +203 -203
- package/dist/sveltia-cms.mjs.map +1 -1
- package/package.json +2 -2
- package/types/public.d.ts +21 -11
package/README.md
CHANGED
|
@@ -46,6 +46,7 @@ The free, open source alternative/successor to Netlify/Decap CMS is now in publi
|
|
|
46
46
|
- [Current limitations](#current-limitations)
|
|
47
47
|
- [Compatibility with Static CMS](#compatibility-with-static-cms)
|
|
48
48
|
- [Framework support](#framework-support)
|
|
49
|
+
- [Backend support](#backend-support)
|
|
49
50
|
- [Browser support](#browser-support)
|
|
50
51
|
- [Other notes](#other-notes)
|
|
51
52
|
- [Getting started](#getting-started)
|
|
@@ -239,9 +240,10 @@ Netlify/Decap CMS users will definitely be pleased and surprised by the numerous
|
|
|
239
240
|
- Users can quickly open the source file of an entry or asset in your repository using View on GitHub (or GitLab) under the 3-dot menu when Developer Mode is enabled.
|
|
240
241
|
- We provide [our own OAuth client](https://github.com/sveltia/sveltia-cms-auth) for GitHub and GitLab.
|
|
241
242
|
- Users won’t get a 404 Not Found error when you sign in to the GitLab backend.[^115]
|
|
243
|
+
- Our Gitea backend is high-performing because it retrieves multiple entries simultaneously. It also won’t cause 400 Bad Request errors due to the presence of `DRAFT_MEDIA_FILES` in a file path.[^222]
|
|
242
244
|
- Features the all-new local backend that boosts DX. See the [productivity section](#better-productivity) above.
|
|
243
245
|
- Developers can select the local and remote backends while working on a local server.
|
|
244
|
-
- The Test backend saves entries and assets in the browser’s [origin private file system](https://web.dev/articles/origin-private-file-system) (OPFS) so that changes are not discarded when the browser tab is closed or reloaded.[^194]
|
|
246
|
+
- The Test backend saves entries and assets in the browser’s [origin private file system](https://web.dev/articles/origin-private-file-system) (OPFS) so that changes are not discarded when the browser tab is closed or reloaded.[^194] The persistent storage support works with all modern browsers [except Safari](https://bugs.webkit.org/show_bug.cgi?id=254726).
|
|
245
247
|
|
|
246
248
|
### Better i18n support
|
|
247
249
|
|
|
@@ -378,6 +380,10 @@ Sveltia CMS has been built with a multilingual architecture from the very beginn
|
|
|
378
380
|
|
|
379
381
|
### Better widgets
|
|
380
382
|
|
|
383
|
+
Sveltia CMS supports all [built-in widgets](https://decapcms.org/docs/widgets/) available in Netlify/Decap CMS except Map. We have made significant improvements to these widgets while adding some new ones. The remaining Map widget will be added soon.
|
|
384
|
+
|
|
385
|
+
Note: The Date widget has been deprecated in Netlify CMS and removed from both Decap CMS and Sveltia CMS in favour of the DateTime widget, as noted in the [Compatibility](#compatibility) section.
|
|
386
|
+
|
|
381
387
|
- Boolean
|
|
382
388
|
- A required Boolean field with no default value is saved as `false` by default, without raising a confusing validation error.[^45]
|
|
383
389
|
- An optional Boolean field with no default value is also saved as `false` by default, rather than nothing.[^46]
|
|
@@ -539,7 +545,7 @@ However, 100% feature parity is not planned, and some features are still missing
|
|
|
539
545
|
|
|
540
546
|
### Features not to be implemented
|
|
541
547
|
|
|
542
|
-
- **Azure, Bitbucket and Forgejo backends**: For performance reasons. We may support these platforms if their APIs improve to allow the CMS to fetch multiple entries at once. Our [
|
|
548
|
+
- **Azure, Bitbucket and Forgejo backends**: For performance reasons. We may support these platforms if their APIs improve to allow the CMS to fetch multiple entries at once. Our [Gitea backend](https://github.com/sveltia/sveltia-cms/issues/198) is incompatible with Forgejo because it uses a new efficient API method. [Forgejo support](https://github.com/sveltia/sveltia-cms/issues/381) will not be added until they implement an equivalent.
|
|
543
549
|
- **Git Gateway backend**: Also for performance reasons. [Git Gateway](https://github.com/netlify/git-gateway) has not been actively maintained since Netlify CMS was abandoned, and it’s known to be slow and prone to rate limit violations. We plan to develop a GraphQL-based high-performance alternative in the future.
|
|
544
550
|
- **Netlify Identity Widget**: It’s not useful without Git Gateway, and the Netlify Identity service itself is now [deprecated](https://www.netlify.com/changelog/deprecation-netlify-identity/). We plan to develop an alternative solution with role support in the future, most likely using [Cloudflare Workers](https://workers.cloudflare.com/) and [Auth.js](https://authjs.dev/).
|
|
545
551
|
- The deprecated client-side implicit grant for the GitLab backend: It has already been [removed from GitLab 15.0](https://gitlab.com/gitlab-org/gitlab/-/issues/344609). Use the client-side PKCE authorization instead.
|
|
@@ -570,7 +576,6 @@ These Netlify/Decap CMS features are not yet implemented in Sveltia CMS. We are
|
|
|
570
576
|
|
|
571
577
|
- Comprehensive site config validation
|
|
572
578
|
- [Localization](https://github.com/sveltia/sveltia-cms/blob/main/src/lib/locales/README.md) other than English and Japanese
|
|
573
|
-
- [Gitea backend](https://decapcms.org/docs/gitea-backend/) ([#198](https://github.com/sveltia/sveltia-cms/issues/198))
|
|
574
579
|
- [Cloudinary](https://decapcms.org/docs/cloudinary/) and [Uploadcare](https://decapcms.org/docs/uploadcare/) media libraries ([#4](https://github.com/sveltia/sveltia-cms/discussions/4))
|
|
575
580
|
- Field-specific media folders (beta) for the [File](https://decapcms.org/docs/widgets/#file) and [Image](https://decapcms.org/docs/widgets/#image) widgets
|
|
576
581
|
- [Map](https://decapcms.org/docs/widgets/#map) widget
|
|
@@ -614,7 +619,12 @@ While Sveltia CMS is built with Svelte, the application is **framework-agnostic*
|
|
|
614
619
|
|
|
615
620
|
So you can use the CMS with any framework or static site generator (SSG) that can load static files during the build process, including but not limited to Astro, Eleventy, Hugo, Jekyll, Next.js, SvelteKit and VitePress.
|
|
616
621
|
|
|
617
|
-
We have added support for features used
|
|
622
|
+
We have added support for features and file structures used in certain frameworks and i18n libraries, such as [index file inclusion](#including-hugos-special-index-file-in-a-folder-collection) and [slug localization](#localizing-entry-slugs) for Hugo, i18n support for Astro and Zola, and [some enhancements](https://github.com/sveltia/sveltia-cms/issues/230) for VitePress. [Let us know](https://github.com/sveltia/sveltia-cms/issues/new?type=feature) if your framework has specific requirements.
|
|
623
|
+
|
|
624
|
+
### Backend support
|
|
625
|
+
|
|
626
|
+
- The GitLab backend requires GitLab 16.3 or later.
|
|
627
|
+
- The Gitea backend requires Gitea 1.24 or later. It’s not compatible with Forgejo as it uses a new efficient API method that Forgejo does not support yet.
|
|
618
628
|
|
|
619
629
|
### Browser support
|
|
620
630
|
|
|
@@ -622,12 +632,11 @@ Sveitia CMS works with all modern browsers, but there are a few limitations beca
|
|
|
622
632
|
|
|
623
633
|
- The [local repository workflow](#working-with-a-local-git-repository) requires a Chromium-based browser, including Chrome, Edge and Brave.
|
|
624
634
|
- Safari: The Test backend doesn’t save changes locally; [image optimization](#optimizing-images-for-upload) is slower than in other browsers.
|
|
625
|
-
- Firefox ESR and its derivatives, including Tor Browser and Mullvad Browser, are not officially supported, although they may still work.
|
|
635
|
+
- Firefox Extended Support Release (ESR) and its derivatives, including Tor Browser and Mullvad Browser, are not officially supported, although they may still work.
|
|
626
636
|
|
|
627
637
|
### Other notes
|
|
628
638
|
|
|
629
639
|
- Sveltia CMS requires a [secure context](https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts), meaning it only works with HTTPS, `localhost` or `127.0.0.1` URLs. If you’re running a remote server yourself and the content is served over HTTP, get a TLS certificate from [Let’s Encrypt](https://letsencrypt.org/).
|
|
630
|
-
- The GitLab backend requires GitLab 16.3 or later.
|
|
631
640
|
|
|
632
641
|
## Getting started
|
|
633
642
|
|
|
@@ -1126,7 +1135,7 @@ We understand that this configuration may be a bit confusing, but it’s necessa
|
|
|
1126
1135
|
|
|
1127
1136
|
This tip is not really specific to Sveltia CMS, but some developers have asked the maintainer about it:
|
|
1128
1137
|
|
|
1129
|
-
In the Markdown editor, pressing `Shift+Enter` inserts a [soft line break](https://spec.commonmark.org/0.31.2/#soft-line-breaks) (`\n`). We can’t change the behaviour to add a [hard line break](https://spec.commonmark.org/0.31.2/#hard-line-breaks) (`<br>`) — it’s a limitation of the underlying [Lexical](https://lexical.dev/) framework. However, if you look at the preview, you may notice that
|
|
1138
|
+
In the Markdown editor, pressing `Shift+Enter` inserts a [soft line break](https://spec.commonmark.org/0.31.2/#soft-line-breaks) (`\n`). We can’t change the behaviour to add a [hard line break](https://spec.commonmark.org/0.31.2/#hard-line-breaks) (`<br>`) — it’s a limitation of the underlying [Lexical](https://lexical.dev/) framework. However, if you look at the preview, you may notice that soft line breaks are rendered as hard line breaks. That’s because the preview is using the [Marked](https://github.com/markedjs/marked) library with the [`breaks` option](https://marked.js.org/using_advanced#options) enabled, which mimics how comments are rendered on GitHub.
|
|
1130
1139
|
|
|
1131
1140
|
Chances are the Markdown parser you use for your frontend can do the same:
|
|
1132
1141
|
|
|
@@ -1145,6 +1154,7 @@ Sveltia CMS supports some [data output](#better-data-output) options, including
|
|
|
1145
1154
|
```yaml
|
|
1146
1155
|
output:
|
|
1147
1156
|
omit_empty_optional_fields: false
|
|
1157
|
+
encode_file_path: false # true to URL-encode file paths for FIle/Image fields
|
|
1148
1158
|
json:
|
|
1149
1159
|
indent_style: space # or tab
|
|
1150
1160
|
indent_size: 2
|
|
@@ -1320,7 +1330,7 @@ See [Contributing to Sveltia CMS](https://github.com/sveltia/sveltia-cms/blob/ma
|
|
|
1320
1330
|
|
|
1321
1331
|
Due Q4 2025
|
|
1322
1332
|
|
|
1323
|
-
- Enhanced [compatibility with Netlify/Decap CMS](#
|
|
1333
|
+
- Enhanced [compatibility with Netlify/Decap CMS](#current-limitations)
|
|
1324
1334
|
- Tackling some more Netlify/Decap CMS issues
|
|
1325
1335
|
- Accessibility audit
|
|
1326
1336
|
- [Localization](https://github.com/sveltia/sveltia-cms/blob/main/src/lib/locales/README.md)
|
|
@@ -1512,7 +1522,7 @@ This software is provided “as is” without any express or implied warranty. W
|
|
|
1512
1522
|
|
|
1513
1523
|
[^72]: Netlify/Decap CMS [#7047](https://github.com/decaporg/decap-cms/issues/7047)
|
|
1514
1524
|
|
|
1515
|
-
[^73]: Netlify/Decap CMS [#6993](https://github.com/decaporg/decap-cms/issues/6993), [#7123](https://github.com/decaporg/decap-cms/issues/7123), [#7127](https://github.com/decaporg/decap-cms/issues/7127), [#7128](https://github.com/decaporg/decap-cms/issues/7128), [#7237](https://github.com/decaporg/decap-cms/issues/7237), [#7251](https://github.com/decaporg/decap-cms/issues/7251), [#7361](https://github.com/decaporg/decap-cms/issues/7361), [#7391](https://github.com/decaporg/decap-cms/issues/7391), [#7393](https://github.com/decaporg/decap-cms/issues/7393), [#7470](https://github.com/decaporg/decap-cms/issues/7470), [#7475](https://github.com/decaporg/decap-cms/issues/7475)
|
|
1525
|
+
[^73]: Netlify/Decap CMS [#6993](https://github.com/decaporg/decap-cms/issues/6993), [#7123](https://github.com/decaporg/decap-cms/issues/7123), [#7127](https://github.com/decaporg/decap-cms/issues/7127), [#7128](https://github.com/decaporg/decap-cms/issues/7128), [#7237](https://github.com/decaporg/decap-cms/issues/7237), [#7251](https://github.com/decaporg/decap-cms/issues/7251), [#7361](https://github.com/decaporg/decap-cms/issues/7361), [#7391](https://github.com/decaporg/decap-cms/issues/7391), [#7393](https://github.com/decaporg/decap-cms/issues/7393), [#7470](https://github.com/decaporg/decap-cms/issues/7470), [#7475](https://github.com/decaporg/decap-cms/issues/7475), [#7480](https://github.com/decaporg/decap-cms/issues/7480)
|
|
1516
1526
|
|
|
1517
1527
|
[^74]: Netlify/Decap CMS [#4209](https://github.com/decaporg/decap-cms/issues/4209)
|
|
1518
1528
|
|
|
@@ -1600,7 +1610,7 @@ This software is provided “as is” without any express or implied warranty. W
|
|
|
1600
1610
|
|
|
1601
1611
|
[^116]: Netlify/Decap CMS [#3431](https://github.com/decaporg/decap-cms/issues/3431)
|
|
1602
1612
|
|
|
1603
|
-
[^117]: Netlify/Decap CMS [#3562](https://github.com/decaporg/decap-cms/issues/3562), [#6215](https://github.com/decaporg/decap-cms/issues/6215)
|
|
1613
|
+
[^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)
|
|
1604
1614
|
|
|
1605
1615
|
[^118]: Netlify/Decap CMS [#7267](https://github.com/decaporg/decap-cms/issues/7267)
|
|
1606
1616
|
|
|
@@ -1809,3 +1819,5 @@ This software is provided “as is” without any express or implied warranty. W
|
|
|
1809
1819
|
[^220]: Netlify/Decap CMS [#2153](https://github.com/decaporg/decap-cms/issues/2153)
|
|
1810
1820
|
|
|
1811
1821
|
[^221]: Netlify/Decap CMS [#3421](https://github.com/decaporg/decap-cms/issues/3421)
|
|
1822
|
+
|
|
1823
|
+
[^222]: Netlify/Decap CMS [#7281](https://github.com/decaporg/decap-cms/issues/7281) — The issue was closed, but the attached PR is not yet merged.
|