@jjlmoya/utils-developer 1.30.0 → 1.32.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 (187) hide show
  1. package/package.json +70 -70
  2. package/src/category/i18n/en.ts +1 -1
  3. package/src/category/i18n/es.ts +1 -1
  4. package/src/category/index.ts +2 -1
  5. package/src/category/seo.astro +1 -1
  6. package/src/components/PreviewNavSidebar.astro +1 -1
  7. package/src/components/PreviewToolbar.astro +1 -1
  8. package/src/data.ts +1 -1
  9. package/src/entries.ts +2 -0
  10. package/src/env.d.ts +1 -1
  11. package/src/index.ts +1 -0
  12. package/src/layouts/PreviewLayout.astro +1 -1
  13. package/src/pages/[locale]/[slug].astro +161 -161
  14. package/src/pages/index.astro +1 -1
  15. package/src/tests/bibliography_wellformed_export.test.ts +46 -0
  16. package/src/tests/category_seo_quality.test.ts +76 -0
  17. package/src/tests/entry_contract.test.ts +8 -2
  18. package/src/tests/faq_count.test.ts +1 -1
  19. package/src/tests/i18n_coverage.test.ts +2 -6
  20. package/src/tests/inverted_punctuation.test.ts +113 -113
  21. package/src/tests/locale_completeness.test.ts +1 -1
  22. package/src/tests/mocks/astro_mock.js +1 -1
  23. package/src/tests/no_h1_in_components.test.ts +1 -1
  24. package/src/tests/promote_this_website_i18n.test.ts +33 -0
  25. package/src/tests/seo_translation_completeness.test.ts +69 -0
  26. package/src/tests/seo_wellformed_export.test.ts +65 -0
  27. package/src/tests/slug_language_code_format.test.ts +25 -25
  28. package/src/tests/slug_uniqueness.test.ts +86 -86
  29. package/src/tests/tool_validation.test.ts +16 -16
  30. package/src/tool/aspectRatio/i18n/de.ts +164 -164
  31. package/src/tool/aspectRatio/i18n/ja.ts +1 -1
  32. package/src/tool/aspectRatio/i18n/ko.ts +1 -1
  33. package/src/tool/aspectRatio/i18n/pl.ts +164 -164
  34. package/src/tool/aspectRatio/i18n/ru.ts +164 -164
  35. package/src/tool/aspectRatio/i18n/zh.ts +165 -165
  36. package/src/tool/aspectRatio/seo.astro +15 -15
  37. package/src/tool/calculadoraTiempoDatos/i18n/de.ts +143 -143
  38. package/src/tool/calculadoraTiempoDatos/i18n/ja.ts +1 -1
  39. package/src/tool/calculadoraTiempoDatos/i18n/ko.ts +1 -1
  40. package/src/tool/calculadoraTiempoDatos/i18n/pl.ts +143 -143
  41. package/src/tool/calculadoraTiempoDatos/i18n/ru.ts +144 -144
  42. package/src/tool/calculadoraTiempoDatos/i18n/sv.ts +143 -143
  43. package/src/tool/calculadoraTiempoDatos/i18n/zh.ts +144 -144
  44. package/src/tool/calculadoraTiempoDatos/seo.astro +15 -15
  45. package/src/tool/colorConverter/i18n/de.ts +120 -120
  46. package/src/tool/colorConverter/i18n/ja.ts +1 -1
  47. package/src/tool/colorConverter/i18n/ko.ts +1 -1
  48. package/src/tool/colorConverter/i18n/ru.ts +120 -120
  49. package/src/tool/colorConverter/i18n/zh.ts +1 -1
  50. package/src/tool/colorConverter/seo.astro +15 -15
  51. package/src/tool/conversorExcelCsvHtml/i18n/ja.ts +1 -1
  52. package/src/tool/conversorExcelCsvHtml/i18n/ko.ts +1 -1
  53. package/src/tool/conversorExcelCsvHtml/i18n/pl.ts +124 -124
  54. package/src/tool/conversorExcelCsvHtml/i18n/ru.ts +124 -124
  55. package/src/tool/conversorExcelCsvHtml/i18n/zh.ts +125 -125
  56. package/src/tool/conversorExcelCsvHtml/seo.astro +15 -15
  57. package/src/tool/cronGenerator/i18n/ja.ts +1 -1
  58. package/src/tool/cronGenerator/i18n/ko.ts +1 -1
  59. package/src/tool/cronGenerator/i18n/zh.ts +183 -183
  60. package/src/tool/cronGenerator/seo.astro +15 -15
  61. package/src/tool/cssSpecificityCalculator/i18n/ja.ts +1 -1
  62. package/src/tool/cssSpecificityCalculator/i18n/ko.ts +1 -1
  63. package/src/tool/cssSpecificityCalculator/i18n/zh.ts +1 -1
  64. package/src/tool/cssSpecificityCalculator/seo.astro +15 -15
  65. package/src/tool/cssToInlineConverter/i18n/ja.ts +1 -1
  66. package/src/tool/cssToInlineConverter/i18n/ko.ts +1 -1
  67. package/src/tool/cssToInlineConverter/i18n/zh.ts +1 -1
  68. package/src/tool/cssToInlineConverter/seo.astro +15 -15
  69. package/src/tool/dualOsIconPreview/assets/day-check.webp +0 -0
  70. package/src/tool/dualOsIconPreview/assets/fast-task.webp +0 -0
  71. package/src/tool/dualOsIconPreview/assets/fortune-cookie.webp +0 -0
  72. package/src/tool/dualOsIconPreview/assets/lexi-crash.webp +0 -0
  73. package/src/tool/dualOsIconPreview/assets/pizzametrics.webp +0 -0
  74. package/src/tool/dualOsIconPreview/assets/sauce-lab.webp +0 -0
  75. package/src/tool/dualOsIconPreview/assets/vesp.webp +0 -0
  76. package/src/tool/dualOsIconPreview/bibliography.astro +6 -0
  77. package/src/tool/dualOsIconPreview/bibliography.ts +7 -0
  78. package/src/tool/dualOsIconPreview/component.astro +117 -0
  79. package/src/tool/dualOsIconPreview/controller.ts +157 -0
  80. package/src/tool/dualOsIconPreview/dom-views.ts +82 -0
  81. package/src/tool/dualOsIconPreview/dual-ios-android-app-icon-preview.css +861 -0
  82. package/src/tool/dualOsIconPreview/entry.ts +31 -0
  83. package/src/tool/dualOsIconPreview/evaluator.ts +20 -0
  84. package/src/tool/dualOsIconPreview/i18n/de.ts +56 -0
  85. package/src/tool/dualOsIconPreview/i18n/en.ts +46 -0
  86. package/src/tool/dualOsIconPreview/i18n/es.ts +56 -0
  87. package/src/tool/dualOsIconPreview/i18n/fr.ts +56 -0
  88. package/src/tool/dualOsIconPreview/i18n/id.ts +56 -0
  89. package/src/tool/dualOsIconPreview/i18n/it.ts +56 -0
  90. package/src/tool/dualOsIconPreview/i18n/ja.ts +56 -0
  91. package/src/tool/dualOsIconPreview/i18n/ko.ts +56 -0
  92. package/src/tool/dualOsIconPreview/i18n/nl.ts +56 -0
  93. package/src/tool/dualOsIconPreview/i18n/pl.ts +56 -0
  94. package/src/tool/dualOsIconPreview/i18n/pt.ts +56 -0
  95. package/src/tool/dualOsIconPreview/i18n/ru.ts +56 -0
  96. package/src/tool/dualOsIconPreview/i18n/sv.ts +56 -0
  97. package/src/tool/dualOsIconPreview/i18n/tr.ts +43 -0
  98. package/src/tool/dualOsIconPreview/i18n/zh.ts +43 -0
  99. package/src/tool/dualOsIconPreview/index.ts +11 -0
  100. package/src/tool/dualOsIconPreview/logic.test.ts +63 -0
  101. package/src/tool/dualOsIconPreview/logic.ts +135 -0
  102. package/src/tool/dualOsIconPreview/seo.astro +15 -0
  103. package/src/tool/dualOsIconPreview/storage.ts +18 -0
  104. package/src/tool/dualOsIconPreview/ui.ts +52 -0
  105. package/src/tool/duplicateCssRemover/i18n/ja.ts +1 -1
  106. package/src/tool/duplicateCssRemover/i18n/ko.ts +1 -1
  107. package/src/tool/duplicateCssRemover/i18n/zh.ts +1 -1
  108. package/src/tool/duplicateCssRemover/seo.astro +15 -15
  109. package/src/tool/generadorSecurityTxt/i18n/ja.ts +1 -1
  110. package/src/tool/generadorSecurityTxt/i18n/ko.ts +1 -1
  111. package/src/tool/generadorSecurityTxt/i18n/zh.ts +1 -1
  112. package/src/tool/generadorSecurityTxt/seo.astro +15 -15
  113. package/src/tool/hashGenerator/i18n/ja.ts +1 -1
  114. package/src/tool/hashGenerator/i18n/ko.ts +1 -1
  115. package/src/tool/hashGenerator/seo.astro +15 -15
  116. package/src/tool/inspectorCertificadosSsl/i18n/ja.ts +1 -1
  117. package/src/tool/inspectorCertificadosSsl/i18n/ko.ts +1 -1
  118. package/src/tool/inspectorCertificadosSsl/i18n/zh.ts +1 -1
  119. package/src/tool/inspectorCertificadosSsl/seo.astro +15 -15
  120. package/src/tool/jsonFormatter/seo.astro +15 -15
  121. package/src/tool/jwtDecoder/i18n/es.ts +248 -248
  122. package/src/tool/jwtDecoder/i18n/fr.ts +248 -248
  123. package/src/tool/jwtDecoder/i18n/tr.ts +248 -248
  124. package/src/tool/keycode/seo.astro +15 -15
  125. package/src/tool/llmCostCalculator/i18n/fr.ts +149 -149
  126. package/src/tool/llmCostCalculator/i18n/ja.ts +1 -1
  127. package/src/tool/llmCostCalculator/i18n/ko.ts +1 -1
  128. package/src/tool/llmCostCalculator/seo.astro +15 -15
  129. package/src/tool/mobileMockupGenerator/i18n/ja.ts +1 -1
  130. package/src/tool/mobileMockupGenerator/i18n/ko.ts +1 -1
  131. package/src/tool/mobileMockupGenerator/i18n/zh.ts +1 -1
  132. package/src/tool/mobileMockupGenerator/seo.astro +15 -15
  133. package/src/tool/musicalTypography/i18n/ja.ts +1 -1
  134. package/src/tool/musicalTypography/i18n/ko.ts +1 -1
  135. package/src/tool/musicalTypography/i18n/zh.ts +1 -1
  136. package/src/tool/musicalTypography/seo.astro +15 -15
  137. package/src/tool/placeholderGenerator/i18n/ja.ts +1 -1
  138. package/src/tool/placeholderGenerator/i18n/ko.ts +1 -1
  139. package/src/tool/placeholderGenerator/i18n/zh.ts +1 -1
  140. package/src/tool/placeholderGenerator/seo.astro +15 -15
  141. package/src/tool/promoteThisWebsite/entry.ts +13 -0
  142. package/src/tool/promoteThisWebsite/i18n/de.ts +95 -0
  143. package/src/tool/promoteThisWebsite/i18n/fr.ts +95 -0
  144. package/src/tool/promoteThisWebsite/i18n/id.ts +95 -0
  145. package/src/tool/promoteThisWebsite/i18n/it.ts +95 -0
  146. package/src/tool/promoteThisWebsite/i18n/ja.ts +95 -0
  147. package/src/tool/promoteThisWebsite/i18n/ko.ts +95 -0
  148. package/src/tool/promoteThisWebsite/i18n/nl.ts +95 -0
  149. package/src/tool/promoteThisWebsite/i18n/pl.ts +95 -0
  150. package/src/tool/promoteThisWebsite/i18n/pt.ts +95 -0
  151. package/src/tool/promoteThisWebsite/i18n/ru.ts +95 -0
  152. package/src/tool/promoteThisWebsite/i18n/sv.ts +95 -0
  153. package/src/tool/promoteThisWebsite/i18n/tr.ts +95 -0
  154. package/src/tool/promoteThisWebsite/i18n/zh.ts +95 -0
  155. package/src/tool/promptLibrary/i18n/ja.ts +1 -1
  156. package/src/tool/promptLibrary/i18n/ko.ts +1 -1
  157. package/src/tool/promptLibrary/i18n/zh.ts +1 -1
  158. package/src/tool/promptLibrary/seo.astro +15 -15
  159. package/src/tool/readabilityCalculator/i18n/ja.ts +1 -1
  160. package/src/tool/readabilityCalculator/i18n/ko.ts +1 -1
  161. package/src/tool/readabilityCalculator/i18n/zh.ts +1 -1
  162. package/src/tool/readabilityCalculator/seo.astro +15 -15
  163. package/src/tool/serpPixelSimulator/entry.ts +30 -30
  164. package/src/tool/serpPixelSimulator/i18n/en.ts +211 -211
  165. package/src/tool/serpPixelSimulator/i18n/fr.ts +214 -214
  166. package/src/tool/serpPixelSimulator/i18n/ru.ts +214 -214
  167. package/src/tool/serpPixelSimulator/logic.ts +18 -18
  168. package/src/tool/serpPixelSimulator/serp-pixel-simulator.css +195 -195
  169. package/src/tool/svgSanitizer/i18n/ja.ts +1 -1
  170. package/src/tool/svgSanitizer/i18n/ko.ts +1 -1
  171. package/src/tool/svgSanitizer/seo.astro +15 -15
  172. package/src/tool/svgToCss/i18n/ja.ts +1 -1
  173. package/src/tool/svgToCss/i18n/ko.ts +1 -1
  174. package/src/tool/svgToCss/seo.astro +15 -15
  175. package/src/tool/urlCleaner/i18n/ja.ts +1 -1
  176. package/src/tool/urlCleaner/i18n/ko.ts +1 -1
  177. package/src/tool/urlCleaner/i18n/zh.ts +1 -1
  178. package/src/tool/urlCleaner/seo.astro +15 -15
  179. package/src/tool/urlEncoderDecoder/i18n/es.ts +146 -146
  180. package/src/tool/urlEncoderDecoder/i18n/ko.ts +1 -1
  181. package/src/tool/urlEncoderDecoder/seo.astro +15 -15
  182. package/src/tool/utmGenerator/i18n/ja.ts +1 -1
  183. package/src/tool/utmGenerator/i18n/ko.ts +1 -1
  184. package/src/tool/utmGenerator/i18n/zh.ts +1 -1
  185. package/src/tool/utmGenerator/seo.astro +15 -15
  186. package/src/tools.ts +2 -1
  187. package/src/types.ts +1 -1
@@ -1,147 +1,147 @@
1
1
  import { bibliography } from '../bibliography';
2
- import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
3
- import type { ToolLocaleContent } from '../../../types';
4
- import type { CalculadoraTiempoDatosUI } from '../ui';
5
-
6
- const slug = 'kalkulyator-vremeni-dannyh';
7
- const title = 'Калькулятор времени данных: Влияние скорости интернета';
8
- const description = 'Узнайте, сколько времени жизни теряют ваши пользователи, ожидая загрузки вашего сайта на 3G, 4G и 5G соединениях. Рассчитайте реальное влияние веса вашего сайта.';
9
-
10
- const faqData = [
11
- {
12
- question: 'Почему важно знать время загрузки моего сайта?',
13
- answer: 'Потому что оно напрямую влияет на пользовательский опыт, SEO и конверсию. Google задокументировал, что каждая секунда задержки снижает конверсию на 7%. Кроме того, 53% мобильных посетителей покидают страницу, загрузка которой занимает более 3 секунд.',
14
- },
15
- {
16
- question: 'Что означают эти небольшие проценты потери времени жизни?',
17
- answer: 'Они представляют собой процент от общей продолжительности жизни человека (примерно 80 лет или 2,5 миллиарда секунд), затрачиваемый на ожидание загрузки вашей страницы. Хотя по отдельности они невелики, в масштабах миллионов пользователей они превращаются в огромные объемы потраченного впустую человеческого времени.',
18
- },
19
- {
20
- question: 'Какова средняя скорость соединения в мире?',
21
- answer: '4G является стандартом в развитых странах. Однако миллионы пользователей в развивающихся странах по-прежнему полагаются на 3G. Вот почему крайне важно оптимизировать ваш сайт для всех скоростей соединения.',
22
- },
23
- {
24
- question: 'Каким должен быть вес моего сайта?',
25
- answer: 'Google рекомендует, чтобы главная страница загружалась менее чем за 3 секунды при обычном 4G-соединении. Для этого сайт в идеале должен весить от 1 до 2 МБ. Однако средний мировой показатель близок к 2-3 МБ.',
26
- },
27
- {
28
- question: 'Как я могу уменьшить вес моего сайта?',
29
- answer: 'Основные стратегии: оптимизация изображений (50-80% веса), минификация CSS и JavaScript, использование ленивой загрузки (lazy loading), внедрение кэширования в браузере и использование CDN. Оптимизация изображений обычно является наиболее эффективным фактором.',
30
- },
31
- {
32
- question: 'Влияет ли скорость загрузки на рейтинг в Google?',
33
- answer: 'Да, безусловно. Google рассматривает Core Web Vitals как важные факторы ранжирования. Медленный сайт будет ранжироваться хуже, чем быстрый, даже при схожем контенте.',
34
- },
35
- ];
36
-
37
- const howToData = [
38
- { name: 'Введите вес вашего сайта', text: 'Используйте инструменты разработчика браузера или WebPageTest, чтобы узнать вес вашей страницы. Введите это значение в МБ.' },
39
- { name: 'Наблюдайте за временем загрузки', text: 'Калькулятор показывает, сколько секунд требуется вашему сайту для загрузки на 3G, 4G и 5G. Реальное время обычно выше.' },
40
- { name: 'Поймите влияние на продолжительность жизни', text: 'Процент "времени жизни" показывает, сколько времени чьей-то жизни тратится на ожидание. Используйте это как мотивацию для оптимизации.' },
41
- { name: 'Оптимизируйте и пересчитайте', text: 'После оптимизации измерьте показатели снова и сделайте перерасчет. Посмотрите, как небольшие улучшения приносят значительный результат.' },
42
- ];
43
-
44
- const faqSchema: WithContext<FAQPage> = {
45
- '@context': 'https://schema.org',
46
- '@type': 'FAQPage',
47
- mainEntity: faqData.map((item) => ({
48
- '@type': 'Question',
49
- name: item.question,
50
- acceptedAnswer: { '@type': 'Answer', text: item.answer },
51
- })),
52
- };
53
-
54
- const howToSchema: WithContext<HowToThing> = {
55
- '@context': 'https://schema.org',
56
- '@type': 'HowTo',
57
- name: title,
58
- description,
59
- step: howToData.map((s, i) => ({ '@type': 'HowToStep', position: i + 1, name: s.name, text: s.text })),
60
- };
61
-
62
- const appSchema: WithContext<SoftwareApplication> = {
63
- '@context': 'https://schema.org',
64
- '@type': 'SoftwareApplication',
65
- name: title,
66
- description,
67
- applicationCategory: 'UtilityApplication',
68
- operatingSystem: 'All',
69
- offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
70
- inLanguage: 'ru',
71
- };
72
-
73
- const ui: CalculadoraTiempoDatosUI = {
74
- headerTitle: 'Время, потерянное в сетях',
75
- labelWebSize: 'Вес сайта (МБ)',
76
- unit: 'МБ',
77
- presetsLabel: 'РЕАЛИСТИЧНЫЕ ПРИМЕРЫ',
78
- labelSpeed: 'Скорость соединения',
79
- speedLabel3g: '3G',
80
- speedValue3g: '0,4 Мбит/с',
81
- speedLabel4g: '4G/LTE',
82
- speedValue4g: '10 Мбит/с',
83
- speedLabel5g: '5G',
84
- speedValue5g: '100+ Мбит/с',
85
- labelTimes: 'Сколько раз в день?',
86
- resultTitle: 'Результаты',
87
- resultSingleLoad: 'Одна загрузка',
88
- resultDailyTotal: 'Итого за день',
89
- resultTimePerYear: 'ожидания в год',
90
- resultLifeYears: 'за всю жизнь',
91
- resultMessage: 'Вы потеряли примерно 1 год жизни',
92
- copyMessage: 'Скопировано',
93
- preset3g: '3G',
94
- preset4g: '4G',
95
- preset5g: '5G',
96
- };
97
-
98
- export const content: ToolLocaleContent<CalculadoraTiempoDatosUI> = {
99
- slug,
100
- title,
101
- description,
102
- ui,
103
- faqTitle: 'Часто задаваемые вопросы',
104
- faq: faqData,
2
+ import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
3
+ import type { ToolLocaleContent } from '../../../types';
4
+ import type { CalculadoraTiempoDatosUI } from '../ui';
5
+
6
+ const slug = 'kalkulyator-vremeni-dannyh';
7
+ const title = 'Калькулятор времени данных: Влияние скорости интернета';
8
+ const description = 'Узнайте, сколько времени жизни теряют ваши пользователи, ожидая загрузки вашего сайта на 3G, 4G и 5G соединениях. Рассчитайте реальное влияние веса вашего сайта.';
9
+
10
+ const faqData = [
11
+ {
12
+ question: 'Почему важно знать время загрузки моего сайта?',
13
+ answer: 'Потому что оно напрямую влияет на пользовательский опыт, SEO и конверсию. Google задокументировал, что каждая секунда задержки снижает конверсию на 7%. Кроме того, 53% мобильных посетителей покидают страницу, загрузка которой занимает более 3 секунд.',
14
+ },
15
+ {
16
+ question: 'Что означают эти небольшие проценты потери времени жизни?',
17
+ answer: 'Они представляют собой процент от общей продолжительности жизни человека (примерно 80 лет или 2,5 миллиарда секунд), затрачиваемый на ожидание загрузки вашей страницы. Хотя по отдельности они невелики, в масштабах миллионов пользователей они превращаются в огромные объемы потраченного впустую человеческого времени.',
18
+ },
19
+ {
20
+ question: 'Какова средняя скорость соединения в мире?',
21
+ answer: '4G является стандартом в развитых странах. Однако миллионы пользователей в развивающихся странах по-прежнему полагаются на 3G. Вот почему крайне важно оптимизировать ваш сайт для всех скоростей соединения.',
22
+ },
23
+ {
24
+ question: 'Каким должен быть вес моего сайта?',
25
+ answer: 'Google рекомендует, чтобы главная страница загружалась менее чем за 3 секунды при обычном 4G-соединении. Для этого сайт в идеале должен весить от 1 до 2 МБ. Однако средний мировой показатель близок к 2-3 МБ.',
26
+ },
27
+ {
28
+ question: 'Как я могу уменьшить вес моего сайта?',
29
+ answer: 'Основные стратегии: оптимизация изображений (50-80% веса), минификация CSS и JavaScript, использование ленивой загрузки (lazy loading), внедрение кэширования в браузере и использование CDN. Оптимизация изображений обычно является наиболее эффективным фактором.',
30
+ },
31
+ {
32
+ question: 'Влияет ли скорость загрузки на рейтинг в Google?',
33
+ answer: 'Да, безусловно. Google рассматривает Core Web Vitals как важные факторы ранжирования. Медленный сайт будет ранжироваться хуже, чем быстрый, даже при схожем контенте.',
34
+ },
35
+ ];
36
+
37
+ const howToData = [
38
+ { name: 'Введите вес вашего сайта', text: 'Используйте инструменты разработчика браузера или WebPageTest, чтобы узнать вес вашей страницы. Введите это значение в МБ.' },
39
+ { name: 'Наблюдайте за временем загрузки', text: 'Калькулятор показывает, сколько секунд требуется вашему сайту для загрузки на 3G, 4G и 5G. Реальное время обычно выше.' },
40
+ { name: 'Поймите влияние на продолжительность жизни', text: 'Процент "времени жизни" показывает, сколько времени чьей-то жизни тратится на ожидание. Используйте это как мотивацию для оптимизации.' },
41
+ { name: 'Оптимизируйте и пересчитайте', text: 'После оптимизации измерьте показатели снова и сделайте перерасчет. Посмотрите, как небольшие улучшения приносят значительный результат.' },
42
+ ];
43
+
44
+ const faqSchema: WithContext<FAQPage> = {
45
+ '@context': 'https://schema.org',
46
+ '@type': 'FAQPage',
47
+ mainEntity: faqData.map((item) => ({
48
+ '@type': 'Question',
49
+ name: item.question,
50
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
51
+ })),
52
+ };
53
+
54
+ const howToSchema: WithContext<HowToThing> = {
55
+ '@context': 'https://schema.org',
56
+ '@type': 'HowTo',
57
+ name: title,
58
+ description,
59
+ step: howToData.map((s, i) => ({ '@type': 'HowToStep', position: i + 1, name: s.name, text: s.text })),
60
+ };
61
+
62
+ const appSchema: WithContext<SoftwareApplication> = {
63
+ '@context': 'https://schema.org',
64
+ '@type': 'SoftwareApplication',
65
+ name: title,
66
+ description,
67
+ applicationCategory: 'UtilityApplication',
68
+ operatingSystem: 'All',
69
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
70
+ inLanguage: 'ru',
71
+ };
72
+
73
+ const ui: CalculadoraTiempoDatosUI = {
74
+ headerTitle: 'Время, потерянное в сетях',
75
+ labelWebSize: 'Вес сайта (МБ)',
76
+ unit: 'МБ',
77
+ presetsLabel: 'РЕАЛИСТИЧНЫЕ ПРИМЕРЫ',
78
+ labelSpeed: 'Скорость соединения',
79
+ speedLabel3g: '3G',
80
+ speedValue3g: '0,4 Мбит/с',
81
+ speedLabel4g: '4G/LTE',
82
+ speedValue4g: '10 Мбит/с',
83
+ speedLabel5g: '5G',
84
+ speedValue5g: '100+ Мбит/с',
85
+ labelTimes: 'Сколько раз в день?',
86
+ resultTitle: 'Результаты',
87
+ resultSingleLoad: 'Одна загрузка',
88
+ resultDailyTotal: 'Итого за день',
89
+ resultTimePerYear: 'ожидания в год',
90
+ resultLifeYears: 'за всю жизнь',
91
+ resultMessage: 'Вы потеряли примерно 1 год жизни',
92
+ copyMessage: 'Скопировано',
93
+ preset3g: '3G',
94
+ preset4g: '4G',
95
+ preset5g: '5G',
96
+ };
97
+
98
+ export const content: ToolLocaleContent<CalculadoraTiempoDatosUI> = {
99
+ slug,
100
+ title,
101
+ description,
102
+ ui,
103
+ faqTitle: 'Часто задаваемые вопросы',
104
+ faq: faqData,
105
105
  bibliographyTitle: 'Технические ресурсы по оптимизации веб-сайтов',
106
106
  bibliography,
107
- howTo: howToData,
108
- schemas: [faqSchema, howToSchema, appSchema],
109
- seo: [
110
- { type: 'title', text: 'Почему скорость загрузки сайта критически важна', level: 2 },
111
- {
112
- type: 'paragraph',
113
- html: 'В сегодняшнюю цифровую эпоху скорость загрузки сайта - это не роскошь, а необходимость. Каждая миллисекунда имеет значение для удержания пользователей, улучшения рейтинга в поиске и максимизации конверсии. Современные пользователи ожидают, что страницы загрузятся менее чем за 3 секунды.',
114
- },
115
- { type: 'title', text: 'Влияние на пользовательский опыт', level: 3 },
116
- {
117
- type: 'paragraph',
118
- html: '53% мобильных посетителей покидают страницу, если ее загрузка занимает более 3 секунд. Коэффициент конверсии падает на 7% при каждой дополнительной секунде задержки.',
119
- },
120
- { type: 'title', text: 'Понимание скорости соединения', level: 3 },
121
- {
122
- type: 'list',
123
- items: [
124
- '<strong>3G:</strong> 0,4 Мбит/с - часто встречается в сельской местности и развивающихся странах',
125
- '<strong>4G/LTE:</strong> 10 Мбит/с - стандарт в развитых странах',
126
- '<strong>5G:</strong> 100+ Мбит/с - постепенно расширяется, но все еще ограничен',
127
- ],
128
- },
129
- { type: 'title', text: 'Стратегии по уменьшению веса сайта', level: 3 },
130
- {
131
- type: 'list',
132
- items: [
133
- '<strong>Оптимизация изображений:</strong> составляет 50-80% веса. Уменьшите его на 40-60% с помощью таких инструментов, как TinyPNG.',
134
- '<strong>Минификация:</strong> удалите ненужный код из CSS и JavaScript. Экономия 30-50%.',
135
- '<strong>Ленивая загрузка:</strong> загружайте изображения только тогда, когда пользователи докручивают до них.',
136
- '<strong>Кэш браузера:</strong> кэшируйте статические файлы в браузерах пользователей.',
137
- '<strong>CDN:</strong> отдавайте контент с географически близких серверов.',
138
- ],
139
- },
140
- { type: 'title', text: 'Заключение: важна каждая секунда', level: 2 },
141
- {
142
- type: 'paragraph',
143
- html: 'Ваш веб-сайт часто является первым впечатлением пользователей о вашем бренде. Медленный сайт разочаровывает пользователей и ведет к потере прибыли. Быстрый и отзывчивый сайт создает положительный опыт и улучшает все ваши показатели.',
144
- },
145
- ],
146
- };
147
-
107
+ howTo: howToData,
108
+ schemas: [faqSchema, howToSchema, appSchema],
109
+ seo: [
110
+ { type: 'title', text: 'Почему скорость загрузки сайта критически важна', level: 2 },
111
+ {
112
+ type: 'paragraph',
113
+ html: 'В сегодняшнюю цифровую эпоху скорость загрузки сайта - это не роскошь, а необходимость. Каждая миллисекунда имеет значение для удержания пользователей, улучшения рейтинга в поиске и максимизации конверсии. Современные пользователи ожидают, что страницы загрузятся менее чем за 3 секунды.',
114
+ },
115
+ { type: 'title', text: 'Влияние на пользовательский опыт', level: 3 },
116
+ {
117
+ type: 'paragraph',
118
+ html: '53% мобильных посетителей покидают страницу, если ее загрузка занимает более 3 секунд. Коэффициент конверсии падает на 7% при каждой дополнительной секунде задержки.',
119
+ },
120
+ { type: 'title', text: 'Понимание скорости соединения', level: 3 },
121
+ {
122
+ type: 'list',
123
+ items: [
124
+ '<strong>3G:</strong> 0,4 Мбит/с - часто встречается в сельской местности и развивающихся странах',
125
+ '<strong>4G/LTE:</strong> 10 Мбит/с - стандарт в развитых странах',
126
+ '<strong>5G:</strong> 100+ Мбит/с - постепенно расширяется, но все еще ограничен',
127
+ ],
128
+ },
129
+ { type: 'title', text: 'Стратегии по уменьшению веса сайта', level: 3 },
130
+ {
131
+ type: 'list',
132
+ items: [
133
+ '<strong>Оптимизация изображений:</strong> составляет 50-80% веса. Уменьшите его на 40-60% с помощью таких инструментов, как TinyPNG.',
134
+ '<strong>Минификация:</strong> удалите ненужный код из CSS и JavaScript. Экономия 30-50%.',
135
+ '<strong>Ленивая загрузка:</strong> загружайте изображения только тогда, когда пользователи докручивают до них.',
136
+ '<strong>Кэш браузера:</strong> кэшируйте статические файлы в браузерах пользователей.',
137
+ '<strong>CDN:</strong> отдавайте контент с географически близких серверов.',
138
+ ],
139
+ },
140
+ { type: 'title', text: 'Заключение: важна каждая секунда', level: 2 },
141
+ {
142
+ type: 'paragraph',
143
+ html: 'Ваш веб-сайт часто является первым впечатлением пользователей о вашем бренде. Медленный сайт разочаровывает пользователей и ведет к потере прибыли. Быстрый и отзывчивый сайт создает положительный опыт и улучшает все ваши показатели.',
144
+ },
145
+ ],
146
+ };
147
+
@@ -1,146 +1,146 @@
1
1
  import { bibliography } from '../bibliography';
2
- import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
3
- import type { ToolLocaleContent } from '../../../types';
4
- import type { CalculadoraTiempoDatosUI } from '../ui';
5
-
6
- const slug = 'data-tids-kalkylator-webbhastighet-paverkan';
7
- const title = 'Datatidskalkylator: Webbhastighetens påverkan';
8
- const description = 'Upptäck hur mycket livstid dina användare förlorar på att vänta på att din webbplats ska laddas via 3G-, 4G- och 5G-anslutningar. Beräkna den faktiska påverkan av din webbplats vikt.';
9
-
10
- const faqData = [
11
- {
12
- question: 'Varför är det viktigt att veta laddningstiden för min webbplats?',
13
- answer: 'Eftersom det direkt påverkar användarupplevelsen, SEO och konverteringar. Google har dokumenterat att varje sekunds fördröjning minskar konverteringarna med 7 %. Dessutom lämnar 53 % av mobilbesökarna en sida som tar mer än 3 sekunder att ladda.',
14
- },
15
- {
16
- question: 'Vad representerar dessa små procentsatser av livstidsförlust?',
17
- answer: 'De representerar den procentuella andelen av en persons totala livstid (cirka 80 år eller 2,5 miljarder sekunder) som spenderas på att vänta på att din sida ska ladda. Även om de är små individuellt, representerar de enorma mängder bortkastad mänsklig tid när de multipliceras med miljontals användare.',
18
- },
19
- {
20
- question: 'Vad är den genomsnittliga anslutningshastigheten i världen?',
21
- answer: '4G är standard i utvecklade länder. Miljontals användare i utvecklingsländer är dock fortfarande beroende av 3G. Det är därför det är avgörande att optimera din webbplats för alla anslutningshastigheter.',
22
- },
23
- {
24
- question: 'Hur mycket bör min webbplats väga?',
25
- answer: 'Google rekommenderar att startsidan laddas på mindre än 3 sekunder via en typisk 4G-anslutning. För detta bör en webbplats helst väga mellan 1 och 2 MB. Det globala genomsnittet ligger dock nära 2-3 MB.',
26
- },
27
- {
28
- question: 'Hur kan jag minska min webbplats vikt?',
29
- answer: 'Huvudstrategier: optimera bilder (50-80 % av vikten), minifiera CSS och JavaScript, använda lazy loading, implementera webbläsarcache och använda en CDN. Bildoptimering är vanligtvis den mest effektiva faktorn.',
30
- },
31
- {
32
- question: 'Påverkar laddningshastigheten Google-rankningen?',
33
- answer: 'Ja, absolut. Google betraktar Core Web Vitals som viktiga rankningsfaktorer. En långsammare webbplats kommer att rankas sämre än en snabbare, även med liknande innehåll.',
34
- },
35
- ];
36
-
37
- const howToData = [
38
- { name: 'Ange din webbplats vikt', text: 'Använd webbläsarens utvecklarverktyg eller WebPageTest för att hitta din sidas vikt. Ange det värdet i MB.' },
39
- { name: 'Observera laddningstider', text: 'Kalkylatorn visar hur många sekunder det tar för din webbplats att ladda via 3G, 4G och 5G. Tiderna i verkligheten är vanligtvis högre.' },
40
- { name: 'Förstå livstidspåverkan', text: 'Procentandelen "livstid" visar hur mycket av någons liv som spenderas på att vänta. Använd detta som motivation för att optimera.' },
41
- { name: 'Optimera och beräkna om', text: 'Mät igen och beräkna om efter optimeringen. Se hur små förbättringar har stor betydelse.' },
42
- ];
43
-
44
- const faqSchema: WithContext<FAQPage> = {
45
- '@context': 'https://schema.org',
46
- '@type': 'FAQPage',
47
- mainEntity: faqData.map((item) => ({
48
- '@type': 'Question',
49
- name: item.question,
50
- acceptedAnswer: { '@type': 'Answer', text: item.answer },
51
- })),
52
- };
53
-
54
- const howToSchema: WithContext<HowToThing> = {
55
- '@context': 'https://schema.org',
56
- '@type': 'HowTo',
57
- name: title,
58
- description,
59
- step: howToData.map((s, i) => ({ '@type': 'HowToStep', position: i + 1, name: s.name, text: s.text })),
60
- };
61
-
62
- const appSchema: WithContext<SoftwareApplication> = {
63
- '@context': 'https://schema.org',
64
- '@type': 'SoftwareApplication',
65
- name: title,
66
- description,
67
- applicationCategory: 'UtilityApplication',
68
- operatingSystem: 'All',
69
- offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
70
- inLanguage: 'sv',
71
- };
72
-
73
- const ui: CalculadoraTiempoDatosUI = {
74
- headerTitle: 'Förlorad tid i nätverk',
75
- labelWebSize: 'Webbplatsvikt (MB)',
76
- unit: 'MB',
77
- presetsLabel: 'REALISTISKA EXEMPEL',
78
- labelSpeed: 'Anslutningshastighet',
79
- speedLabel3g: '3G',
80
- speedValue3g: '0,4 Mbps',
81
- speedLabel4g: '4G/LTE',
82
- speedValue4g: '10 Mbps',
83
- speedLabel5g: '5G',
84
- speedValue5g: '100+ Mbps',
85
- labelTimes: 'Hur många gånger per dag?',
86
- resultTitle: 'Resultat',
87
- resultSingleLoad: 'Enskild laddning',
88
- resultDailyTotal: 'Daglig total',
89
- resultTimePerYear: 'väntetid per år',
90
- resultLifeYears: 'under din livstid',
91
- resultMessage: 'Du har förlorat ungefär 1 år av ditt liv',
92
- copyMessage: 'Kopierat',
93
- preset3g: '3G',
94
- preset4g: '4G',
95
- preset5g: '5G',
96
- };
97
-
98
- export const content: ToolLocaleContent<CalculadoraTiempoDatosUI> = {
99
- slug,
100
- title,
101
- description,
102
- ui,
103
- faqTitle: 'Vanliga frågor',
104
- faq: faqData,
2
+ import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
3
+ import type { ToolLocaleContent } from '../../../types';
4
+ import type { CalculadoraTiempoDatosUI } from '../ui';
5
+
6
+ const slug = 'data-tids-kalkylator-webbhastighet-paverkan';
7
+ const title = 'Datatidskalkylator: Webbhastighetens påverkan';
8
+ const description = 'Upptäck hur mycket livstid dina användare förlorar på att vänta på att din webbplats ska laddas via 3G-, 4G- och 5G-anslutningar. Beräkna den faktiska påverkan av din webbplats vikt.';
9
+
10
+ const faqData = [
11
+ {
12
+ question: 'Varför är det viktigt att veta laddningstiden för min webbplats?',
13
+ answer: 'Eftersom det direkt påverkar användarupplevelsen, SEO och konverteringar. Google har dokumenterat att varje sekunds fördröjning minskar konverteringarna med 7 %. Dessutom lämnar 53 % av mobilbesökarna en sida som tar mer än 3 sekunder att ladda.',
14
+ },
15
+ {
16
+ question: 'Vad representerar dessa små procentsatser av livstidsförlust?',
17
+ answer: 'De representerar den procentuella andelen av en persons totala livstid (cirka 80 år eller 2,5 miljarder sekunder) som spenderas på att vänta på att din sida ska ladda. Även om de är små individuellt, representerar de enorma mängder bortkastad mänsklig tid när de multipliceras med miljontals användare.',
18
+ },
19
+ {
20
+ question: 'Vad är den genomsnittliga anslutningshastigheten i världen?',
21
+ answer: '4G är standard i utvecklade länder. Miljontals användare i utvecklingsländer är dock fortfarande beroende av 3G. Det är därför det är avgörande att optimera din webbplats för alla anslutningshastigheter.',
22
+ },
23
+ {
24
+ question: 'Hur mycket bör min webbplats väga?',
25
+ answer: 'Google rekommenderar att startsidan laddas på mindre än 3 sekunder via en typisk 4G-anslutning. För detta bör en webbplats helst väga mellan 1 och 2 MB. Det globala genomsnittet ligger dock nära 2-3 MB.',
26
+ },
27
+ {
28
+ question: 'Hur kan jag minska min webbplats vikt?',
29
+ answer: 'Huvudstrategier: optimera bilder (50-80 % av vikten), minifiera CSS och JavaScript, använda lazy loading, implementera webbläsarcache och använda en CDN. Bildoptimering är vanligtvis den mest effektiva faktorn.',
30
+ },
31
+ {
32
+ question: 'Påverkar laddningshastigheten Google-rankningen?',
33
+ answer: 'Ja, absolut. Google betraktar Core Web Vitals som viktiga rankningsfaktorer. En långsammare webbplats kommer att rankas sämre än en snabbare, även med liknande innehåll.',
34
+ },
35
+ ];
36
+
37
+ const howToData = [
38
+ { name: 'Ange din webbplats vikt', text: 'Använd webbläsarens utvecklarverktyg eller WebPageTest för att hitta din sidas vikt. Ange det värdet i MB.' },
39
+ { name: 'Observera laddningstider', text: 'Kalkylatorn visar hur många sekunder det tar för din webbplats att ladda via 3G, 4G och 5G. Tiderna i verkligheten är vanligtvis högre.' },
40
+ { name: 'Förstå livstidspåverkan', text: 'Procentandelen "livstid" visar hur mycket av någons liv som spenderas på att vänta. Använd detta som motivation för att optimera.' },
41
+ { name: 'Optimera och beräkna om', text: 'Mät igen och beräkna om efter optimeringen. Se hur små förbättringar har stor betydelse.' },
42
+ ];
43
+
44
+ const faqSchema: WithContext<FAQPage> = {
45
+ '@context': 'https://schema.org',
46
+ '@type': 'FAQPage',
47
+ mainEntity: faqData.map((item) => ({
48
+ '@type': 'Question',
49
+ name: item.question,
50
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
51
+ })),
52
+ };
53
+
54
+ const howToSchema: WithContext<HowToThing> = {
55
+ '@context': 'https://schema.org',
56
+ '@type': 'HowTo',
57
+ name: title,
58
+ description,
59
+ step: howToData.map((s, i) => ({ '@type': 'HowToStep', position: i + 1, name: s.name, text: s.text })),
60
+ };
61
+
62
+ const appSchema: WithContext<SoftwareApplication> = {
63
+ '@context': 'https://schema.org',
64
+ '@type': 'SoftwareApplication',
65
+ name: title,
66
+ description,
67
+ applicationCategory: 'UtilityApplication',
68
+ operatingSystem: 'All',
69
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
70
+ inLanguage: 'sv',
71
+ };
72
+
73
+ const ui: CalculadoraTiempoDatosUI = {
74
+ headerTitle: 'Förlorad tid i nätverk',
75
+ labelWebSize: 'Webbplatsvikt (MB)',
76
+ unit: 'MB',
77
+ presetsLabel: 'REALISTISKA EXEMPEL',
78
+ labelSpeed: 'Anslutningshastighet',
79
+ speedLabel3g: '3G',
80
+ speedValue3g: '0,4 Mbps',
81
+ speedLabel4g: '4G/LTE',
82
+ speedValue4g: '10 Mbps',
83
+ speedLabel5g: '5G',
84
+ speedValue5g: '100+ Mbps',
85
+ labelTimes: 'Hur många gånger per dag?',
86
+ resultTitle: 'Resultat',
87
+ resultSingleLoad: 'Enskild laddning',
88
+ resultDailyTotal: 'Daglig total',
89
+ resultTimePerYear: 'väntetid per år',
90
+ resultLifeYears: 'under din livstid',
91
+ resultMessage: 'Du har förlorat ungefär 1 år av ditt liv',
92
+ copyMessage: 'Kopierat',
93
+ preset3g: '3G',
94
+ preset4g: '4G',
95
+ preset5g: '5G',
96
+ };
97
+
98
+ export const content: ToolLocaleContent<CalculadoraTiempoDatosUI> = {
99
+ slug,
100
+ title,
101
+ description,
102
+ ui,
103
+ faqTitle: 'Vanliga frågor',
104
+ faq: faqData,
105
105
  bibliographyTitle: 'Tekniska resurser för webboptimering',
106
106
  bibliography,
107
- howTo: howToData,
108
- schemas: [faqSchema, howToSchema, appSchema],
109
- seo: [
110
- { type: 'title', text: 'Varför laddningshastigheten är kritisk', level: 2 },
111
- {
112
- type: 'paragraph',
113
- html: 'I dagens digitala tidsålder är laddningshastigheten på en webbplats inte en lyx, utan en nödvändighet. Varje millisekund räknas när man ska behålla användare, förbättra sökrankningen och maximera konverteringarna. Moderna användare förväntar sig att sidor laddas på mindre än 3 sekunder.',
114
- },
115
- { type: 'title', text: 'Påverkan på användarupplevelsen', level: 3 },
116
- {
117
- type: 'paragraph',
118
- html: '53 % av mobilbesökarna lämnar en sida om det tar mer än 3 sekunder att ladda. Konverteringsgraden sjunker med 7 % för varje extra sekunds fördröjning.',
119
- },
120
- { type: 'title', text: 'Förståelse för anslutningshastigheter', level: 3 },
121
- {
122
- type: 'list',
123
- items: [
124
- '<strong>3G:</strong> 0,4 Mbps - Vanligt i landsbygdsområden och utvecklingsländer',
125
- '<strong>4G/LTE:</strong> 10 Mbps - Standard i utvecklade länder',
126
- '<strong>5G:</strong> 100+ Mbps - Utökas gradvis, fortfarande begränsat',
127
- ],
128
- },
129
- { type: 'title', text: 'Strategier för att minska webbplatsens vikt', level: 3 },
130
- {
131
- type: 'list',
132
- items: [
133
- '<strong>Bildoptimering:</strong> Representerar 50-80 % av vikten. Minska med 40-60 % med verktyg som TinyPNG.',
134
- '<strong>Minifiering:</strong> Ta bort onödig kod från CSS och JavaScript. Spara 30-50 %.',
135
- '<strong>Lazy Loading:</strong> Ladda bilder först när användaren scrollar till dem.',
136
- '<strong>Webbläsarcache:</strong> Cachelagra statiska filer i användarnas webbläsare.',
137
- '<strong>CDN:</strong> Leverera innehåll från servrar som ligger geografiskt nära.',
138
- ],
139
- },
140
- { type: 'title', text: 'Slutsats: Varje sekund räknas', level: 2 },
141
- {
142
- type: 'paragraph',
143
- html: 'Din webbplats är ofta det första intrycket användarna får av ditt varumärke. En långsam webbplats frustrerar användare och leder till förlorade affärer. En snabb, responsiv webbplats skapar en positiv upplevelse och förbättrar alla dina mätvärden.',
144
- },
145
- ],
146
- };
107
+ howTo: howToData,
108
+ schemas: [faqSchema, howToSchema, appSchema],
109
+ seo: [
110
+ { type: 'title', text: 'Varför laddningshastigheten är kritisk', level: 2 },
111
+ {
112
+ type: 'paragraph',
113
+ html: 'I dagens digitala tidsålder är laddningshastigheten på en webbplats inte en lyx, utan en nödvändighet. Varje millisekund räknas när man ska behålla användare, förbättra sökrankningen och maximera konverteringarna. Moderna användare förväntar sig att sidor laddas på mindre än 3 sekunder.',
114
+ },
115
+ { type: 'title', text: 'Påverkan på användarupplevelsen', level: 3 },
116
+ {
117
+ type: 'paragraph',
118
+ html: '53 % av mobilbesökarna lämnar en sida om det tar mer än 3 sekunder att ladda. Konverteringsgraden sjunker med 7 % för varje extra sekunds fördröjning.',
119
+ },
120
+ { type: 'title', text: 'Förståelse för anslutningshastigheter', level: 3 },
121
+ {
122
+ type: 'list',
123
+ items: [
124
+ '<strong>3G:</strong> 0,4 Mbps - Vanligt i landsbygdsområden och utvecklingsländer',
125
+ '<strong>4G/LTE:</strong> 10 Mbps - Standard i utvecklade länder',
126
+ '<strong>5G:</strong> 100+ Mbps - Utökas gradvis, fortfarande begränsat',
127
+ ],
128
+ },
129
+ { type: 'title', text: 'Strategier för att minska webbplatsens vikt', level: 3 },
130
+ {
131
+ type: 'list',
132
+ items: [
133
+ '<strong>Bildoptimering:</strong> Representerar 50-80 % av vikten. Minska med 40-60 % med verktyg som TinyPNG.',
134
+ '<strong>Minifiering:</strong> Ta bort onödig kod från CSS och JavaScript. Spara 30-50 %.',
135
+ '<strong>Lazy Loading:</strong> Ladda bilder först när användaren scrollar till dem.',
136
+ '<strong>Webbläsarcache:</strong> Cachelagra statiska filer i användarnas webbläsare.',
137
+ '<strong>CDN:</strong> Leverera innehåll från servrar som ligger geografiskt nära.',
138
+ ],
139
+ },
140
+ { type: 'title', text: 'Slutsats: Varje sekund räknas', level: 2 },
141
+ {
142
+ type: 'paragraph',
143
+ html: 'Din webbplats är ofta det första intrycket användarna får av ditt varumärke. En långsam webbplats frustrerar användare och leder till förlorade affärer. En snabb, responsiv webbplats skapar en positiv upplevelse och förbättrar alla dina mätvärden.',
144
+ },
145
+ ],
146
+ };