@jjlmoya/utils-social 1.13.0 → 1.15.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.
Files changed (146) hide show
  1. package/package.json +4 -2
  2. package/src/category/i18n/fr.ts +2 -2
  3. package/src/category/i18n/ru.ts +1 -1
  4. package/src/env.d.ts +5 -0
  5. package/src/layouts/PreviewLayout.astro +7 -2
  6. package/src/pages/[locale]/[slug].astro +28 -12
  7. package/src/tests/diacritics_density.test.ts +118 -0
  8. package/src/tests/inverted_punctuation.test.ts +84 -0
  9. package/src/tests/locale_completeness.test.ts +4 -14
  10. package/src/tests/no_en_dash.test.ts +70 -0
  11. package/src/tests/pagespeed_best_practices.test.ts +198 -0
  12. package/src/tests/script_density.test.ts +94 -0
  13. package/src/tests/shared-test-helpers.ts +56 -0
  14. package/src/tests/tool_exports.test.ts +34 -0
  15. package/src/tool/redditFormatter/bibliography.astro +2 -10
  16. package/src/tool/redditFormatter/bibliography.ts +12 -0
  17. package/src/tool/redditFormatter/i18n/de.ts +3 -13
  18. package/src/tool/redditFormatter/i18n/en.ts +3 -13
  19. package/src/tool/redditFormatter/i18n/es.ts +3 -13
  20. package/src/tool/redditFormatter/i18n/fr.ts +5 -15
  21. package/src/tool/redditFormatter/i18n/id.ts +3 -13
  22. package/src/tool/redditFormatter/i18n/it.ts +3 -13
  23. package/src/tool/redditFormatter/i18n/ja.ts +3 -13
  24. package/src/tool/redditFormatter/i18n/ko.ts +3 -13
  25. package/src/tool/redditFormatter/i18n/nl.ts +3 -13
  26. package/src/tool/redditFormatter/i18n/pl.ts +7 -17
  27. package/src/tool/redditFormatter/i18n/pt.ts +3 -13
  28. package/src/tool/redditFormatter/i18n/ru.ts +5 -15
  29. package/src/tool/redditFormatter/i18n/sv.ts +3 -13
  30. package/src/tool/redditFormatter/i18n/tr.ts +3 -13
  31. package/src/tool/redditFormatter/i18n/zh.ts +4 -14
  32. package/src/tool/redditFormatter/seo.astro +2 -1
  33. package/src/tool/safeZones/bibliography.astro +2 -10
  34. package/src/tool/safeZones/bibliography.ts +20 -0
  35. package/src/tool/safeZones/component.astro +1 -1
  36. package/src/tool/safeZones/i18n/de.ts +5 -23
  37. package/src/tool/safeZones/i18n/en.ts +5 -23
  38. package/src/tool/safeZones/i18n/es.ts +3 -21
  39. package/src/tool/safeZones/i18n/fr.ts +14 -32
  40. package/src/tool/safeZones/i18n/id.ts +5 -23
  41. package/src/tool/safeZones/i18n/it.ts +9 -27
  42. package/src/tool/safeZones/i18n/ja.ts +3 -21
  43. package/src/tool/safeZones/i18n/ko.ts +3 -21
  44. package/src/tool/safeZones/i18n/nl.ts +5 -23
  45. package/src/tool/safeZones/i18n/pl.ts +10 -28
  46. package/src/tool/safeZones/i18n/pt.ts +5 -23
  47. package/src/tool/safeZones/i18n/ru.ts +12 -30
  48. package/src/tool/safeZones/i18n/sv.ts +5 -23
  49. package/src/tool/safeZones/i18n/tr.ts +3 -21
  50. package/src/tool/safeZones/i18n/zh.ts +7 -25
  51. package/src/tool/safeZones/seo.astro +2 -1
  52. package/src/tool/socialImageResizer/bibliography.astro +2 -10
  53. package/src/tool/socialImageResizer/bibliography.ts +12 -0
  54. package/src/tool/socialImageResizer/component.astro +2 -2
  55. package/src/tool/socialImageResizer/i18n/de.ts +8 -18
  56. package/src/tool/socialImageResizer/i18n/en.ts +11 -21
  57. package/src/tool/socialImageResizer/i18n/es.ts +10 -20
  58. package/src/tool/socialImageResizer/i18n/fr.ts +14 -24
  59. package/src/tool/socialImageResizer/i18n/id.ts +11 -21
  60. package/src/tool/socialImageResizer/i18n/it.ts +19 -29
  61. package/src/tool/socialImageResizer/i18n/ja.ts +10 -20
  62. package/src/tool/socialImageResizer/i18n/ko.ts +10 -20
  63. package/src/tool/socialImageResizer/i18n/nl.ts +11 -21
  64. package/src/tool/socialImageResizer/i18n/pl.ts +12 -22
  65. package/src/tool/socialImageResizer/i18n/pt.ts +11 -21
  66. package/src/tool/socialImageResizer/i18n/ru.ts +17 -27
  67. package/src/tool/socialImageResizer/i18n/sv.ts +11 -21
  68. package/src/tool/socialImageResizer/i18n/tr.ts +10 -20
  69. package/src/tool/socialImageResizer/i18n/zh.ts +10 -20
  70. package/src/tool/socialImageResizer/seo.astro +2 -1
  71. package/src/tool/socialValueCalculator/bibliography.astro +2 -10
  72. package/src/tool/socialValueCalculator/bibliography.ts +16 -0
  73. package/src/tool/socialValueCalculator/component.astro +1 -2
  74. package/src/tool/socialValueCalculator/i18n/de.ts +5 -19
  75. package/src/tool/socialValueCalculator/i18n/en.ts +4 -18
  76. package/src/tool/socialValueCalculator/i18n/es.ts +5 -19
  77. package/src/tool/socialValueCalculator/i18n/fr.ts +9 -23
  78. package/src/tool/socialValueCalculator/i18n/id.ts +4 -18
  79. package/src/tool/socialValueCalculator/i18n/it.ts +17 -31
  80. package/src/tool/socialValueCalculator/i18n/ja.ts +4 -18
  81. package/src/tool/socialValueCalculator/i18n/ko.ts +4 -18
  82. package/src/tool/socialValueCalculator/i18n/nl.ts +4 -18
  83. package/src/tool/socialValueCalculator/i18n/pl.ts +4 -18
  84. package/src/tool/socialValueCalculator/i18n/pt.ts +4 -18
  85. package/src/tool/socialValueCalculator/i18n/ru.ts +10 -24
  86. package/src/tool/socialValueCalculator/i18n/sv.ts +4 -18
  87. package/src/tool/socialValueCalculator/i18n/tr.ts +4 -18
  88. package/src/tool/socialValueCalculator/i18n/zh.ts +7 -21
  89. package/src/tool/socialValueCalculator/seo.astro +2 -1
  90. package/src/tool/tinderPhotoOptimizer/bibliography.astro +2 -10
  91. package/src/tool/tinderPhotoOptimizer/bibliography.ts +12 -0
  92. package/src/tool/tinderPhotoOptimizer/component.astro +23 -6
  93. package/src/tool/tinderPhotoOptimizer/i18n/de.ts +6 -16
  94. package/src/tool/tinderPhotoOptimizer/i18n/en.ts +4 -14
  95. package/src/tool/tinderPhotoOptimizer/i18n/es.ts +3 -13
  96. package/src/tool/tinderPhotoOptimizer/i18n/fr.ts +28 -38
  97. package/src/tool/tinderPhotoOptimizer/i18n/id.ts +3 -13
  98. package/src/tool/tinderPhotoOptimizer/i18n/it.ts +3 -13
  99. package/src/tool/tinderPhotoOptimizer/i18n/ja.ts +3 -13
  100. package/src/tool/tinderPhotoOptimizer/i18n/ko.ts +3 -13
  101. package/src/tool/tinderPhotoOptimizer/i18n/nl.ts +3 -13
  102. package/src/tool/tinderPhotoOptimizer/i18n/pl.ts +3 -13
  103. package/src/tool/tinderPhotoOptimizer/i18n/pt.ts +3 -13
  104. package/src/tool/tinderPhotoOptimizer/i18n/ru.ts +12 -22
  105. package/src/tool/tinderPhotoOptimizer/i18n/sv.ts +3 -13
  106. package/src/tool/tinderPhotoOptimizer/i18n/tr.ts +3 -13
  107. package/src/tool/tinderPhotoOptimizer/i18n/zh.ts +5 -15
  108. package/src/tool/tinderPhotoOptimizer/seo.astro +2 -1
  109. package/src/tool/youtubeThumbnail/bibliography.astro +2 -10
  110. package/src/tool/youtubeThumbnail/bibliography.ts +16 -0
  111. package/src/tool/youtubeThumbnail/component.astro +1 -0
  112. package/src/tool/youtubeThumbnail/i18n/de.ts +6 -20
  113. package/src/tool/youtubeThumbnail/i18n/en.ts +4 -18
  114. package/src/tool/youtubeThumbnail/i18n/es.ts +3 -17
  115. package/src/tool/youtubeThumbnail/i18n/fr.ts +6 -20
  116. package/src/tool/youtubeThumbnail/i18n/id.ts +3 -17
  117. package/src/tool/youtubeThumbnail/i18n/it.ts +3 -17
  118. package/src/tool/youtubeThumbnail/i18n/ja.ts +3 -17
  119. package/src/tool/youtubeThumbnail/i18n/ko.ts +3 -17
  120. package/src/tool/youtubeThumbnail/i18n/nl.ts +3 -17
  121. package/src/tool/youtubeThumbnail/i18n/pl.ts +3 -17
  122. package/src/tool/youtubeThumbnail/i18n/pt.ts +3 -17
  123. package/src/tool/youtubeThumbnail/i18n/ru.ts +6 -20
  124. package/src/tool/youtubeThumbnail/i18n/sv.ts +3 -17
  125. package/src/tool/youtubeThumbnail/i18n/tr.ts +3 -17
  126. package/src/tool/youtubeThumbnail/i18n/zh.ts +5 -19
  127. package/src/tool/youtubeThumbnail/seo.astro +2 -1
  128. package/src/tool/youtubeThumbnailPreviewer/bibliography.astro +2 -10
  129. package/src/tool/youtubeThumbnailPreviewer/bibliography.ts +16 -0
  130. package/src/tool/youtubeThumbnailPreviewer/i18n/de.ts +11 -25
  131. package/src/tool/youtubeThumbnailPreviewer/i18n/en.ts +5 -19
  132. package/src/tool/youtubeThumbnailPreviewer/i18n/es.ts +3 -17
  133. package/src/tool/youtubeThumbnailPreviewer/i18n/fr.ts +12 -26
  134. package/src/tool/youtubeThumbnailPreviewer/i18n/id.ts +5 -19
  135. package/src/tool/youtubeThumbnailPreviewer/i18n/it.ts +24 -38
  136. package/src/tool/youtubeThumbnailPreviewer/i18n/ja.ts +3 -17
  137. package/src/tool/youtubeThumbnailPreviewer/i18n/ko.ts +3 -17
  138. package/src/tool/youtubeThumbnailPreviewer/i18n/nl.ts +7 -21
  139. package/src/tool/youtubeThumbnailPreviewer/i18n/pl.ts +10 -24
  140. package/src/tool/youtubeThumbnailPreviewer/i18n/pt.ts +3 -17
  141. package/src/tool/youtubeThumbnailPreviewer/i18n/ru.ts +14 -28
  142. package/src/tool/youtubeThumbnailPreviewer/i18n/sv.ts +5 -19
  143. package/src/tool/youtubeThumbnailPreviewer/i18n/tr.ts +3 -17
  144. package/src/tool/youtubeThumbnailPreviewer/i18n/zh.ts +13 -27
  145. package/src/tool/youtubeThumbnailPreviewer/seo.astro +2 -1
  146. package/src/types.ts +0 -2
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { YoutubeThumbnailUI } from '../ui';
@@ -87,23 +88,8 @@ export const content: ToolLocaleContent<YoutubeThumbnailUI> = {
87
88
  slug,
88
89
  title,
89
90
  description,
90
- faqTitle: 'Sıkça Sorulan Sorular',
91
- faq: faqData,
92
- bibliographyTitle: 'Dökümantasyon ve Referanslar',
93
- bibliography: [
94
- {
95
- name: 'YouTube Yardımı: Özel video küçük resmi ekleme',
96
- url: 'https://support.google.com/youtube/answer/72431',
97
- },
98
- {
99
- name: 'YouTube Creator Academy: Etkili küçük resimler nasıl oluşturulur',
100
- url: 'https://creatoracademy.youtube.com/',
101
- },
102
- {
103
- name: 'Google Developers: YouTube Data API — Thumbnails',
104
- url: 'https://developers.google.com/youtube/v3/docs/thumbnails',
105
- },
106
- ],
91
+ faq: faqData,
92
+ bibliography,
107
93
  howTo: howToData,
108
94
  schemas: [faqSchema, howToSchema, appSchema],
109
95
  seo: [
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { YoutubeThumbnailUI } from '../ui';
@@ -33,11 +34,11 @@ const faqData = [
33
34
  const howToData = [
34
35
  {
35
36
  name: '复制视频 URL',
36
- text: '访问 YouTube 并从浏览器地址栏或通过“分享”按钮复制视频链接。',
37
+ text: '访问 YouTube 并从浏览器地址栏或通过\"分享\"按钮复制视频链接。',
37
38
  },
38
39
  {
39
40
  name: '粘贴链接',
40
- text: '在提取器的输入框中输入 URL,或使用“从剪贴板粘贴”按钮。',
41
+ text: '在提取器的输入框中输入 URL,或使用\"从剪贴板粘贴\"按钮。',
41
42
  },
42
43
  {
43
44
  name: '选择画质',
@@ -87,23 +88,8 @@ export const content: ToolLocaleContent<YoutubeThumbnailUI> = {
87
88
  slug,
88
89
  title,
89
90
  description,
90
- faqTitle: '常见问题',
91
- faq: faqData,
92
- bibliographyTitle: '文档与参考资料',
93
- bibliography: [
94
- {
95
- name: 'YouTube 帮助:添加自定义视频缩略图',
96
- url: 'https://support.google.com/youtube/answer/72431',
97
- },
98
- {
99
- name: 'YouTube 创作者学院:如何制作高效的缩略图',
100
- url: 'https://creatoracademy.youtube.com/',
101
- },
102
- {
103
- name: 'Google Developers: YouTube Data API — Thumbnails',
104
- url: 'https://developers.google.com/youtube/v3/docs/thumbnails',
105
- },
106
- ],
91
+ faq: faqData,
92
+ bibliography,
107
93
  howTo: howToData,
108
94
  schemas: [faqSchema, howToSchema, appSchema],
109
95
  seo: [
@@ -11,4 +11,5 @@ const { locale = 'es' } = Astro.props;
11
11
  const content = await youtubeThumbnail.i18n[locale]?.();
12
12
  if (!content) return null;
13
13
  ---
14
- <SEORenderer content={{ locale: locale as string, sections: content.seo }} />
14
+
15
+ {content.seo?.length > 0 && <SEORenderer content={{ locale, sections: content.seo }} />}
@@ -1,14 +1,6 @@
1
1
  ---
2
2
  import { Bibliography as SharedBibliography } from '@jjlmoya/utils-shared';
3
- import { youtubeThumbnailPreviewer } from './index';
4
- import type { KnownLocale } from '../../types';
5
-
6
- interface Props {
7
- locale?: KnownLocale;
8
- }
9
-
10
- const { locale = 'es' } = Astro.props;
11
- const content = await youtubeThumbnailPreviewer.i18n[locale]?.();
3
+ import { bibliography } from './bibliography';
12
4
  ---
13
5
 
14
- {content && <SharedBibliography links={content.bibliography} />}
6
+ <SharedBibliography links={bibliography} />
@@ -0,0 +1,16 @@
1
+ import type { BibliographyEntry } from '../../types';
2
+
3
+ export const bibliography: BibliographyEntry[] = [
4
+ {
5
+ name: 'YouTube Help: Create custom video thumbnails',
6
+ url: 'https://support.google.com/youtube/answer/141805',
7
+ },
8
+ {
9
+ name: 'Nielsen Norman Group: Visual Processing and UX Design',
10
+ url: 'https://www.nngroup.com/articles/visual-processing/',
11
+ },
12
+ {
13
+ name: 'Derral Eves: The YouTube Formula (Thumbnail Strategy)',
14
+ url: 'https://derraleves.com/the-youtube-formula/',
15
+ },
16
+ ];
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { YoutubeThumbnailPreviewerUI } from '../ui';
@@ -92,23 +93,8 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
92
93
  slug,
93
94
  title,
94
95
  description,
95
- faqTitle: 'Häufig gestellte Fragen',
96
- faq: faqData,
97
- bibliographyTitle: 'Referenzen',
98
- bibliography: [
99
- {
100
- name: 'YouTube-Hilfe: Eigene Video-Thumbnails erstellen',
101
- url: 'https://support.google.com/youtube/answer/141805',
102
- },
103
- {
104
- name: 'Nielsen Norman Group: Visuelle Verarbeitung und UX-Design',
105
- url: 'https://www.nngroup.com/articles/visual-processing/',
106
- },
107
- {
108
- name: 'Derral Eves: Die YouTube-Formel (Thumbnail-Strategie)',
109
- url: 'https://derraleves.com/the-youtube-formula/',
110
- },
111
- ],
96
+ faq: faqData,
97
+ bibliography,
112
98
  howTo: howToData,
113
99
  schemas: [faqSchema, howToSchema, appSchema],
114
100
  seo: [
@@ -119,7 +105,7 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
119
105
  },
120
106
  {
121
107
  type: 'paragraph',
122
- html: 'Im YouTube-Ökosystem ist das Thumbnail das Tor zu Ihrem Inhalt. Sie können das beste Video der Welt haben – Schnitt auf Hollywood-Niveau, ein oscarreifes Skript –, aber wenn niemand klickt, bleibt Ihre Arbeit für den Algorithmus unsichtbar. Hier kommt die <strong>CTR (Click-Through-Rate)</strong> ins Spiel, und das Thumbnail ist der entscheidende Faktor.',
108
+ html: 'Im YouTube-Ökosystem ist das Thumbnail das Tor zu Ihrem Inhalt. Sie können das beste Video der Welt haben - Schnitt auf Hollywood-Niveau, ein oscarreifes Skript -, aber wenn niemand klickt, bleibt Ihre Arbeit für den Algorithmus unsichtbar. Hier kommt die <strong>CTR (Click-Through-Rate)</strong> ins Spiel, und das Thumbnail ist der entscheidende Faktor.',
123
109
  },
124
110
  {
125
111
  type: 'title',
@@ -139,7 +125,7 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
139
125
  },
140
126
  {
141
127
  type: 'paragraph',
142
- html: 'Viele Creator machen den Fehler, Thumbnails auf großen Monitoren zu entwerfen und sie in ihren bevorzugten Editoren im Vollbildmodus zu betrachten. Das Problem ist, dass der Endnutzer sie selten so sieht. Die meisten konsumieren Inhalte auf einem mobilen Gerät beim endlosen Scrollen oder in einer Ecke des Monitors im Dark Mode. Unser <strong>YouTube Thumbnail Previewer</strong> ermöglicht es Ihnen, diese „Designer-Illusion“ zu durchbrechen und die chirurgische Realität des Feeds zu sehen.',
128
+ html: 'Viele Creator machen den Fehler, Thumbnails auf großen Monitoren zu entwerfen und sie in ihren bevorzugten Editoren im Vollbildmodus zu betrachten. Das Problem ist, dass der Endnutzer sie selten so sieht. Die meisten konsumieren Inhalte auf einem mobilen Gerät beim endlosen Scrollen oder in einer Ecke des Monitors im Dark Mode. Unser <strong>YouTube Thumbnail Previewer</strong> ermöglicht es Ihnen, diese \"Designer-Illusion\" zu durchbrechen und die chirurgische Realität des Feeds zu sehen.',
143
129
  },
144
130
  {
145
131
  type: 'title',
@@ -162,11 +148,11 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
162
148
  },
163
149
  {
164
150
  type: 'paragraph',
165
- html: 'Das menschliche Gehirn verarbeitet Bilder tausendmal schneller als Text. Doch auf YouTube ist die Konkurrenz brutal. Ihr Thumbnail muss nicht nur „schön“ sein – es muss <strong>lesbar</strong> sein und <strong>Kontrast</strong> haben.',
151
+ html: 'Das menschliche Gehirn verarbeitet Bilder tausendmal schneller als Text. Doch auf YouTube ist die Konkurrenz brutal. Ihr Thumbnail muss nicht nur \"schön\" sein - es muss <strong>lesbar</strong> sein und <strong>Kontrast</strong> haben.',
166
152
  },
167
153
  {
168
154
  type: 'paragraph',
169
- html: 'Ein häufiger Fehler ist die Verwendung von Farben, die mit dem YouTube-Hintergrund verschmelzen. Wenn Sie dunkle Grautöne verwenden und Ihr Zuschauer im Dark Mode ist, verschwindet Ihr Video einfach aus seiner peripheren Wahrnehmung. Mit diesem Tester können Sie zwischen den Themes wechseln und sicherstellen, dass Ihr Design in jedem Szenario „auffällt“.',
155
+ html: 'Ein häufiger Fehler ist die Verwendung von Farben, die mit dem YouTube-Hintergrund verschmelzen. Wenn Sie dunkle Grautöne verwenden und Ihr Zuschauer im Dark Mode ist, verschwindet Ihr Video einfach aus seiner peripheren Wahrnehmung. Mit diesem Tester können Sie zwischen den Themes wechseln und sicherstellen, dass Ihr Design in jedem Szenario \"auffällt\".',
170
156
  },
171
157
  {
172
158
  type: 'title',
@@ -175,7 +161,7 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
175
161
  },
176
162
  {
177
163
  type: 'paragraph',
178
- html: 'Lohnt es sich, 30 Sekunden in das Testen des Thumbnails zu investieren? Die Antwort ist ein klares JA. Ein optimiertes Thumbnail kann Ihre Aufrufe in den ersten 24 Stunden verdoppeln und der YouTube-KI signalisieren, dass Ihr Inhalt einen „Hook“ hat.',
164
+ html: 'Lohnt es sich, 30 Sekunden in das Testen des Thumbnails zu investieren? Die Antwort ist ein klares JA. Ein optimiertes Thumbnail kann Ihre Aufrufe in den ersten 24 Stunden verdoppeln und der YouTube-KI signalisieren, dass Ihr Inhalt einen \"Hook\" hat.',
179
165
  },
180
166
  {
181
167
  type: 'grid',
@@ -232,7 +218,7 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
232
218
  },
233
219
  {
234
220
  title: 'Verschwommener Hintergrund',
235
- body: 'Ebenentrennung · Fügt Tiefe hinzu, sodass das Hauptmotiv aus dem Bildschirm „springt“.',
221
+ body: 'Ebenentrennung · Fügt Tiefe hinzu, sodass das Hauptmotiv aus dem Bildschirm \"springt\".',
236
222
  },
237
223
  {
238
224
  title: 'Platz für die Dauer',
@@ -242,7 +228,7 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
242
228
  },
243
229
  {
244
230
  type: 'tip',
245
- title: 'Der Trick mit der „toten Zone“',
231
+ title: 'Der Trick mit der \"toten Zone\"',
246
232
  html: '<p>YouTube platziert in der unteren rechten Ecke des Thumbnails immer einen schwarzen Kasten mit der Videodauer. Tausende Creator platzieren wichtige Elemente in dieser Zone, nur um festzustellen, dass die App sie verdeckt. Unser Tool simuliert diesen Kasten, damit Sie niemals Ihre beste Aufnahme verdecken.</p>',
247
233
  },
248
234
  {
@@ -269,7 +255,7 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
269
255
  },
270
256
  {
271
257
  type: 'title',
272
- text: 'Nutzung des „Split“-Modus (Direkter Vergleich)',
258
+ text: 'Nutzung des \"Split\"-Modus (Direkter Vergleich)',
273
259
  level: 3,
274
260
  },
275
261
  {
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { YoutubeThumbnailPreviewerUI } from '../ui';
@@ -92,23 +93,8 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
92
93
  slug,
93
94
  title,
94
95
  description,
95
- faqTitle: 'Frequently Asked Questions',
96
- faq: faqData,
97
- bibliographyTitle: 'References',
98
- bibliography: [
99
- {
100
- name: 'YouTube Help: Create custom video thumbnails',
101
- url: 'https://support.google.com/youtube/answer/141805',
102
- },
103
- {
104
- name: 'Nielsen Norman Group: Visual Processing and UX Design',
105
- url: 'https://www.nngroup.com/articles/visual-processing/',
106
- },
107
- {
108
- name: 'Derral Eves: The YouTube Formula (Thumbnail Strategy)',
109
- url: 'https://derraleves.com/the-youtube-formula/',
110
- },
111
- ],
96
+ faq: faqData,
97
+ bibliography,
112
98
  howTo: howToData,
113
99
  schemas: [faqSchema, howToSchema, appSchema],
114
100
  seo: [
@@ -119,7 +105,7 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
119
105
  },
120
106
  {
121
107
  type: 'paragraph',
122
- html: "In the YouTube ecosystem, the thumbnail is the gateway to your content. You could have the best video in the world — Hollywood-level editing, an Oscar-worthy script — but if no one clicks, your work will be invisible to the algorithm. This is where <strong>CTR (Click-Through Rate)</strong> comes in, and the thumbnail is the determining factor.",
108
+ html: "In the YouTube ecosystem, the thumbnail is the gateway to your content. You could have the best video in the world - Hollywood-level editing, an Oscar-worthy script - but if no one clicks, your work will be invisible to the algorithm. This is where <strong>CTR (Click-Through Rate)</strong> comes in, and the thumbnail is the determining factor.",
123
109
  },
124
110
  {
125
111
  type: 'title',
@@ -162,7 +148,7 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
162
148
  },
163
149
  {
164
150
  type: 'paragraph',
165
- html: 'The human brain processes images thousands of times faster than text. Yet on YouTube, the competition is brutal. Your thumbnail must not only be "pretty" — it must be <strong>readable</strong> and have <strong>contrast</strong>.',
151
+ html: 'The human brain processes images thousands of times faster than text. Yet on YouTube, the competition is brutal. Your thumbnail must not only be "pretty" - it must be <strong>readable</strong> and have <strong>contrast</strong>.',
166
152
  },
167
153
  {
168
154
  type: 'paragraph',
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { YoutubeThumbnailPreviewerUI } from '../ui';
@@ -92,23 +93,8 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
92
93
  slug,
93
94
  title,
94
95
  description,
95
- faqTitle: 'Preguntas Frecuentes',
96
- faq: faqData,
97
- bibliographyTitle: 'Referencias',
98
- bibliography: [
99
- {
100
- name: 'YouTube Help: Create custom video thumbnails',
101
- url: 'https://support.google.com/youtube/answer/141805',
102
- },
103
- {
104
- name: 'Nielsen Norman Group: Visual Processing and UX Design',
105
- url: 'https://www.nngroup.com/articles/visual-processing/',
106
- },
107
- {
108
- name: 'Derral Eves: The YouTube Formula (Thumbnail Strategy)',
109
- url: 'https://derraleves.com/the-youtube-formula/',
110
- },
111
- ],
96
+ faq: faqData,
97
+ bibliography,
112
98
  howTo: howToData,
113
99
  schemas: [faqSchema, howToSchema, appSchema],
114
100
  seo: [
@@ -1,9 +1,10 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { YoutubeThumbnailPreviewerUI } from '../ui';
4
5
 
5
6
  const slug = 'apercu-miniatures-youtube';
6
- const title = 'Aperçu des Miniatures YouTube en Ligne : Améliorez votre CTR Gratuitement';
7
+ const title = 'Aperçu des Miniatures YouTube en Ligne: Améliorez votre CTR Gratuitement';
7
8
  const description =
8
9
  'Téléchargez votre miniature et visualisez comment elle apparaît dans le vrai feed YouTube mobile et desktop. Simulateur mode sombre et clair pour optimiser les clics instantanément.';
9
10
 
@@ -92,29 +93,14 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
92
93
  slug,
93
94
  title,
94
95
  description,
95
- faqTitle: 'Questions Fréquentes',
96
- faq: faqData,
97
- bibliographyTitle: 'Références',
98
- bibliography: [
99
- {
100
- name: 'YouTube Help: Create custom video thumbnails',
101
- url: 'https://support.google.com/youtube/answer/141805',
102
- },
103
- {
104
- name: 'Nielsen Norman Group: Visual Processing and UX Design',
105
- url: 'https://www.nngroup.com/articles/visual-processing/',
106
- },
107
- {
108
- name: 'Derral Eves: The YouTube Formula (Thumbnail Strategy)',
109
- url: 'https://derraleves.com/the-youtube-formula/',
110
- },
111
- ],
96
+ faq: faqData,
97
+ bibliography,
112
98
  howTo: howToData,
113
99
  schemas: [faqSchema, howToSchema, appSchema],
114
100
  seo: [
115
101
  {
116
102
  type: 'title',
117
- text: 'Aperçu des Miniatures YouTube : Maîtrisez le CTR de votre Chaîne',
103
+ text: 'Aperçu des Miniatures YouTube: Maîtrisez le CTR de votre Chaîne',
118
104
  level: 2,
119
105
  },
120
106
  {
@@ -157,7 +143,7 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
157
143
  },
158
144
  {
159
145
  type: 'title',
160
- text: 'La Psychologie du Clic : Pourquoi les miniatures échouent-elles ?',
146
+ text: 'La Psychologie du Clic: Pourquoi les miniatures échouent-elles ?',
161
147
  level: 3,
162
148
  },
163
149
  {
@@ -170,7 +156,7 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
170
156
  },
171
157
  {
172
158
  type: 'title',
173
- text: 'Comparaison Directe : Design vs. Réalité',
159
+ text: 'Comparaison Directe: Design vs. Réalité',
174
160
  level: 3,
175
161
  },
176
162
  {
@@ -255,15 +241,15 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
255
241
  columns: [
256
242
  {
257
243
  title: 'Interface ultra rapide et réactive',
258
- body: "Limitation : Ne permet pas l'édition d'image (utiliser Canva/PS)",
244
+ body: "Limitation: Ne permet pas l'édition d'image (utiliser Canva/PS)",
259
245
  },
260
246
  {
261
247
  title: 'Maquettes exactes de l\'App et du Web',
262
- body: 'Limitation : Ne simule pas les publicités Pre-roll',
248
+ body: 'Limitation: Ne simule pas les publicités Pre-roll',
263
249
  },
264
250
  {
265
251
  title: 'Gratuit et sans publicité intrusive',
266
- body: 'Limitation : Prend uniquement en charge les fichiers locaux',
252
+ body: 'Limitation: Prend uniquement en charge les fichiers locaux',
267
253
  },
268
254
  ],
269
255
  },
@@ -278,7 +264,7 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
278
264
  },
279
265
  {
280
266
  type: 'title',
281
- text: 'Confidentialité : Vos Designs ne sont pas Téléchargés dans le Cloud',
267
+ text: 'Confidentialité: Vos Designs ne sont pas Téléchargés dans le Cloud',
282
268
  level: 3,
283
269
  },
284
270
  {
@@ -287,7 +273,7 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
287
273
  },
288
274
  {
289
275
  type: 'title',
290
- text: 'Conclusion : Le Pixel Parfait Garanti',
276
+ text: 'Conclusion: Le Pixel Parfait Garanti',
291
277
  level: 3,
292
278
  },
293
279
  {
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { YoutubeThumbnailPreviewerUI } from '../ui';
@@ -92,23 +93,8 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
92
93
  slug,
93
94
  title,
94
95
  description,
95
- faqTitle: 'Pertanyaan yang Sering Diajukan',
96
- faq: faqData,
97
- bibliographyTitle: 'Referensi',
98
- bibliography: [
99
- {
100
- name: 'Bantuan YouTube: Membuat thumbnail video kustom',
101
- url: 'https://support.google.com/youtube/answer/141805',
102
- },
103
- {
104
- name: 'Nielsen Norman Group: Visual Processing and UX Design',
105
- url: 'https://www.nngroup.com/articles/visual-processing/',
106
- },
107
- {
108
- name: 'Derral Eves: The YouTube Formula (Thumbnail Strategy)',
109
- url: 'https://derraleves.com/the-youtube-formula/',
110
- },
111
- ],
96
+ faq: faqData,
97
+ bibliography,
112
98
  howTo: howToData,
113
99
  schemas: [faqSchema, howToSchema, appSchema],
114
100
  seo: [
@@ -119,7 +105,7 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
119
105
  },
120
106
  {
121
107
  type: 'paragraph',
122
- html: 'Dalam ekosistem YouTube, thumbnail adalah pintu gerbang menuju konten Anda. Anda bisa memiliki video terbaik di dunia — pengeditan tingkat Hollywood, skrip layak Oscar — namun jika tidak ada yang mengklik, karya Anda tidak akan terlihat oleh algoritma. Di sinilah <strong>CTR (Click-Through Rate)</strong> berperan, dan thumbnail adalah faktor penentunya.',
108
+ html: 'Dalam ekosistem YouTube, thumbnail adalah pintu gerbang menuju konten Anda. Anda bisa memiliki video terbaik di dunia - pengeditan tingkat Hollywood, skrip layak Oscar - namun jika tidak ada yang mengklik, karya Anda tidak akan terlihat oleh algoritma. Di sinilah <strong>CTR (Click-Through Rate)</strong> berperan, dan thumbnail adalah faktor penentunya.',
123
109
  },
124
110
  {
125
111
  type: 'title',
@@ -162,7 +148,7 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
162
148
  },
163
149
  {
164
150
  type: 'paragraph',
165
- html: 'Otak manusia memproses gambar ribuan kali lebih cepat daripada teks. Namun di YouTube, persaingannya sangat sengit. Thumbnail Anda tidak hanya harus "cantik" — ia harus <strong>terbaca</strong> dan memiliki <strong>kontras</strong>.',
151
+ html: 'Otak manusia memproses gambar ribuan kali lebih cepat daripada teks. Namun di YouTube, persaingannya sangat sengit. Thumbnail Anda tidak hanya harus "cantik" - ia harus <strong>terbaca</strong> dan memiliki <strong>kontras</strong>.',
166
152
  },
167
153
  {
168
154
  type: 'paragraph',
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { YoutubeThumbnailPreviewerUI } from '../ui';
@@ -26,19 +27,19 @@ const faqData = [
26
27
  {
27
28
  question: 'In che modo questo strumento aiuta a migliorare il mio CTR?',
28
29
  answer:
29
- 'Il CTR (Click-Through Rate) è la percentuale di persone che cliccano quando vedono la miniatura. Simulando l’ambiente reale (sfondo nero vs bianco, mobile vs desktop), puoi correggere errori di contrasto e composizione prima della pubblicazione, aumentando i tuoi clic.',
30
+ 'Il CTR (Click-Through Rate) è la percentuale di persone che cliccano quando vedono la miniatura. Simulando l\'ambiente reale (sfondo nero vs bianco, mobile vs desktop), puoi correggere errori di contrasto e composizione prima della pubblicazione, aumentando i tuoi clic.',
30
31
  },
31
32
  {
32
33
  question: 'Funziona con la Modalità Scura ufficiale di YouTube?',
33
34
  answer:
34
- 'Sì. Abbiamo incluso un selettore di temi (Chiaro e Scuro) che imita esattamente i colori esadecimali utilizzati dall’app ufficiale di YouTube in entrambe le modalità.',
35
+ 'Sì. Abbiamo incluso un selettore di temi (Chiaro e Scuro) che imita esattamente i colori esadecimali utilizzati dall\'app ufficiale di YouTube in entrambe le modalità.',
35
36
  },
36
37
  ];
37
38
 
38
39
  const howToData = [
39
40
  {
40
41
  name: 'Carica il tuo design',
41
- text: 'Fai clic sull’area di caricamento o trascina il tuo file immagine (PNG, JPG o WebP) direttamente nello strumento.',
42
+ text: 'Fai clic sull\'area di caricamento o trascina il tuo file immagine (PNG, JPG o WebP) direttamente nello strumento.',
42
43
  },
43
44
  {
44
45
  name: 'Imposta il contesto',
@@ -92,23 +93,8 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
92
93
  slug,
93
94
  title,
94
95
  description,
95
- faqTitle: 'Domande Frequenti',
96
- faq: faqData,
97
- bibliographyTitle: 'Riferimenti',
98
- bibliography: [
99
- {
100
- name: 'Guida di YouTube: Creare miniature personalizzate per i video',
101
- url: 'https://support.google.com/youtube/answer/141805',
102
- },
103
- {
104
- name: 'Nielsen Norman Group: Visual Processing and UX Design',
105
- url: 'https://www.nngroup.com/articles/visual-processing/',
106
- },
107
- {
108
- name: 'Derral Eves: The YouTube Formula (Thumbnail Strategy)',
109
- url: 'https://derraleves.com/the-youtube-formula/',
110
- },
111
- ],
96
+ faq: faqData,
97
+ bibliography,
112
98
  howTo: howToData,
113
99
  schemas: [faqSchema, howToSchema, appSchema],
114
100
  seo: [
@@ -119,7 +105,7 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
119
105
  },
120
106
  {
121
107
  type: 'paragraph',
122
- html: 'Nell’ecosistema di YouTube, la miniatura (o thumbnail) è la porta d’ingresso ai tuoi contenuti. Puoi avere il miglior video del mondo — montaggio da Hollywood, sceneggiatura da Oscar — ma se nessuno clicca, il tuo lavoro sarà invisibile per l’algoritmo. È qui che entra in gioco il <strong>CTR (Click-Through Rate)</strong>, e la miniatura è il fattore determinante.',
108
+ html: 'Nell\'ecosistema di YouTube, la miniatura (o thumbnail) è la porta d\'ingresso ai tuoi contenuti. Puoi avere il miglior video del mondo - montaggio da Hollywood, sceneggiatura da Oscar - ma se nessuno clicca, il tuo lavoro sarà invisibile per l\'algoritmo. È qui che entra in gioco il <strong>CTR (Click-Through Rate)</strong>, e la miniatura è il fattore determinante.',
123
109
  },
124
110
  {
125
111
  type: 'title',
@@ -130,16 +116,16 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
130
116
  type: 'list',
131
117
  items: [
132
118
  '<strong>Anteprima Reale:</strong> Guarda la tua miniatura esattamente come apparirà nel feed di YouTube.',
133
- '<strong>Modalità Scura e Chiara:</strong> Assicurati che i colori risaltino in qualsiasi configurazione dell’utente.',
119
+ '<strong>Modalità Scura e Chiara:</strong> Assicurati che i colori risaltino in qualsiasi configurazione dell\'utente.',
134
120
  '<strong>Simulatore di Dispositivi:</strong> Controlla la leggibilità del testo sia su monitor che su piccoli schermi mobile.',
135
- '<strong>Ottimizzazione del CTR:</strong> Confronta il tuo design con l’interfaccia nativa per massimizzare i clic.',
136
- '<strong>Nessuna Registrazione:</strong> Carica la tua immagine e provala all’istante senza creare account.',
121
+ '<strong>Ottimizzazione del CTR:</strong> Confronta il tuo design con l\'interfaccia nativa per massimizzare i clic.',
122
+ '<strong>Nessuna Registrazione:</strong> Carica la tua immagine e provala all\'istante senza creare account.',
137
123
  '<strong>Privacy Garantita:</strong> I tuoi design vengono elaborati localmente e mai caricati sui server.',
138
124
  ],
139
125
  },
140
126
  {
141
127
  type: 'paragraph',
142
- html: 'Molti creator commettono l’errore di progettare le proprie miniature su grandi monitor, visualizzandole a schermo intero nei loro editor preferiti. Il problema è che l’utente finale la vede raramente così. La maggior parte le consuma su un dispositivo mobile mentre scorre il feed, o in un angolo del monitor in modalità scura. Il nostro <strong>Anteprima Miniature di YouTube</strong> ti permette di rompere questa "illusione del designer" e vedere la realtà chirurgica del feed.',
128
+ html: 'Molti creator commettono l\'errore di progettare le proprie miniature su grandi monitor, visualizzandole a schermo intero nei loro editor preferiti. Il problema è che l\'utente finale la vede raramente così. La maggior parte le consuma su un dispositivo mobile mentre scorre il feed, o in un angolo del monitor in modalità scura. Il nostro <strong>Anteprima Miniature di YouTube</strong> ti permette di rompere questa "illusione del designer" e vedere la realtà chirurgica del feed.',
143
129
  },
144
130
  {
145
131
  type: 'title',
@@ -162,7 +148,7 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
162
148
  },
163
149
  {
164
150
  type: 'paragraph',
165
- html: 'Il cervello umano elabora le immagini migliaia di volte più velocemente del testo. Tuttavia, su YouTube, la concorrenza è brutale. La tua miniatura non deve solo essere "bella" — deve essere <strong>leggibile</strong> e avere <strong>contrasto</strong>.',
151
+ html: 'Il cervello umano elabora le immagini migliaia di volte più velocemente del testo. Tuttavia, su YouTube, la concorrenza è brutale. La tua miniatura non deve solo essere "bella" - deve essere <strong>leggibile</strong> e avere <strong>contrasto</strong>.',
166
152
  },
167
153
  {
168
154
  type: 'paragraph',
@@ -175,14 +161,14 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
175
161
  },
176
162
  {
177
163
  type: 'paragraph',
178
- html: 'Vale la pena perdere 30 secondi per testare la miniatura? La risposta è un rotondo SÌ. Una miniatura ottimizzata può raddoppiare le tue visualizzazioni nelle prime 24 ore, indicando all’IA di YouTube che il tuo contenuto ha "presa".',
164
+ html: 'Vale la pena perdere 30 secondi per testare la miniatura? La risposta è un rotondo SÌ. Una miniatura ottimizzata può raddoppiare le tue visualizzazioni nelle prime 24 ore, indicando all\'IA di YouTube che il tuo contenuto ha "presa".',
179
165
  },
180
166
  {
181
167
  type: 'grid',
182
168
  columns: [
183
169
  {
184
170
  title: 'Design in Photoshop / Canva',
185
- body: 'Falsa sensazione delle dimensioni reali · Ignora il contrasto con lo sfondo dell’app · Il testo sembra leggibile ma forse non lo è · Non vedi gli elementi della UI (durata, avatar)',
171
+ body: 'Falsa sensazione delle dimensioni reali · Ignora il contrasto con lo sfondo dell\'app · Il testo sembra leggibile ma forse non lo è · Non vedi gli elementi della UI (durata, avatar)',
186
172
  },
187
173
  {
188
174
  title: 'Anteprima Miniature YouTube',
@@ -203,11 +189,11 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
203
189
  type: 'list',
204
190
  items: [
205
191
  'Il testo è leggibile su uno schermo mobile piccolo?',
206
- 'C’è abbastanza contrasto tra lo sfondo e il soggetto principale?',
192
+ 'C\'è abbastanza contrasto tra lo sfondo e il soggetto principale?',
207
193
  'La miniatura appare bene sullo sfondo nero della Modalità Scura?',
208
- 'Il titolo del video copre informazioni vitali dell’immagine?',
194
+ 'Il titolo del video copre informazioni vitali dell\'immagine?',
209
195
  'Il badge della durata (il quadratino nero) nasconde qualcosa di importante?',
210
- 'Il volto o l’oggetto principale trasmettono l’emozione desiderata a dimensioni ridotte?',
196
+ 'Il volto o l\'oggetto principale trasmettono l\'emozione desiderata a dimensioni ridotte?',
211
197
  ],
212
198
  },
213
199
  {
@@ -217,14 +203,14 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
217
203
  },
218
204
  {
219
205
  type: 'paragraph',
220
- html: 'Basandoci sull’analisi dei canali più grandi al mondo, una miniatura vincente segue solitamente questo schema strutturale:',
206
+ html: 'Basandoci sull\'analisi dei canali più grandi al mondo, una miniatura vincente segue solitamente questo schema strutturale:',
221
207
  },
222
208
  {
223
209
  type: 'grid',
224
210
  columns: [
225
211
  {
226
212
  title: 'Soggetto Principale',
227
- body: 'Fuoco dell’attenzione primaria · Usa ritagli nitidi con un leggero bordo o saturazione extra.',
213
+ body: 'Fuoco dell\'attenzione primaria · Usa ritagli nitidi con un leggero bordo o saturazione extra.',
228
214
  },
229
215
  {
230
216
  title: 'Testo (Max 3 parole)',
@@ -236,14 +222,14 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
236
222
  },
237
223
  {
238
224
  title: 'Spazio della Durata',
239
- body: 'Evitare errori · Non mettere volti o testo nell’angolo in basso a destra.',
225
+ body: 'Evitare errori · Non mettere volti o testo nell\'angolo in basso a destra.',
240
226
  },
241
227
  ],
242
228
  },
243
229
  {
244
230
  type: 'tip',
245
231
  title: 'Il Trucco della Zona Morta',
246
- html: '<p>YouTube posiziona sempre un riquadro nero con la durata del video nell’angolo in basso a destra della miniatura. Migliaia di creator mettono elementi vitali in quella zona, solo per scoprire che l’app li copre. Il nostro strumento simula questo riquadro in modo da non coprire mai la tua inquadratura migliore.</p>',
232
+ html: '<p>YouTube posiziona sempre un riquadro nero con la durata del video nell\'angolo in basso a destra della miniatura. Migliaia di creator mettono elementi vitali in quella zona, solo per scoprire che l\'app li copre. Il nostro strumento simula questo riquadro in modo da non coprire mai la tua inquadratura migliore.</p>',
247
233
  },
248
234
  {
249
235
  type: 'title',
@@ -255,10 +241,10 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
255
241
  columns: [
256
242
  {
257
243
  title: 'Interfaccia ultra rapida e reattiva',
258
- body: 'Limitazione: Non permette l’editing dell’immagine (usare Canva/PS)',
244
+ body: 'Limitazione: Non permette l\'editing dell\'immagine (usare Canva/PS)',
259
245
  },
260
246
  {
261
- title: 'Mockup esatti dell’App e del Web',
247
+ title: 'Mockup esatti dell\'App e del Web',
262
248
  body: 'Limitazione: Non simula gli annunci Pre-roll',
263
249
  },
264
250
  {
@@ -292,7 +278,7 @@ export const content: ToolLocaleContent<YoutubeThumbnailPreviewerUI> = {
292
278
  },
293
279
  {
294
280
  type: 'paragraph',
295
- html: 'Smetti di tirare a indovinare e inizia a validare. L’<strong>Anteprima Miniature per YouTube</strong> di JJLMoya è lo strumento gratuito che separa i creator amatoriali dai professionisti dei contenuti. Un piccolo aggiustamento nella dimensione di un font o nella posizione del soggetto può fare la differenza tra un video che passa inosservato e un successo virale.',
281
+ html: 'Smetti di tirare a indovinare e inizia a validare. L\'<strong>Anteprima Miniature per YouTube</strong> di JJLMoya è lo strumento gratuito che separa i creator amatoriali dai professionisti dei contenuti. Un piccolo aggiustamento nella dimensione di un font o nella posizione del soggetto può fare la differenza tra un video che passa inosservato e un successo virale.',
296
282
  },
297
283
  {
298
284
  type: 'paragraph',