@jjlmoya/utils-nature 1.3.0 → 1.4.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 (56) hide show
  1. package/package.json +2 -1
  2. package/src/tests/i18n_coverage.test.ts +36 -0
  3. package/src/tests/slug_uniqueness.test.ts +81 -0
  4. package/src/tests/tool_validation.test.ts +1 -2
  5. package/src/tool/cricketThermometer/i18n/de.ts +181 -0
  6. package/src/tool/cricketThermometer/i18n/id.ts +181 -0
  7. package/src/tool/cricketThermometer/i18n/it.ts +181 -0
  8. package/src/tool/cricketThermometer/i18n/ja.ts +181 -0
  9. package/src/tool/cricketThermometer/i18n/ko.ts +181 -0
  10. package/src/tool/cricketThermometer/i18n/nl.ts +181 -0
  11. package/src/tool/cricketThermometer/i18n/pl.ts +181 -0
  12. package/src/tool/cricketThermometer/i18n/pt.ts +181 -0
  13. package/src/tool/cricketThermometer/i18n/ru.ts +181 -0
  14. package/src/tool/cricketThermometer/i18n/sv.ts +181 -0
  15. package/src/tool/cricketThermometer/i18n/tr.ts +181 -0
  16. package/src/tool/cricketThermometer/i18n/zh.ts +181 -0
  17. package/src/tool/cricketThermometer/index.ts +15 -7
  18. package/src/tool/digitalCarbon/i18n/de.ts +235 -0
  19. package/src/tool/digitalCarbon/i18n/id.ts +235 -0
  20. package/src/tool/digitalCarbon/i18n/it.ts +235 -0
  21. package/src/tool/digitalCarbon/i18n/ja.ts +235 -0
  22. package/src/tool/digitalCarbon/i18n/ko.ts +235 -0
  23. package/src/tool/digitalCarbon/i18n/nl.ts +235 -0
  24. package/src/tool/digitalCarbon/i18n/pl.ts +235 -0
  25. package/src/tool/digitalCarbon/i18n/pt.ts +235 -0
  26. package/src/tool/digitalCarbon/i18n/ru.ts +235 -0
  27. package/src/tool/digitalCarbon/i18n/sv.ts +235 -0
  28. package/src/tool/digitalCarbon/i18n/tr.ts +235 -0
  29. package/src/tool/digitalCarbon/i18n/zh.ts +235 -0
  30. package/src/tool/digitalCarbon/index.ts +15 -7
  31. package/src/tool/rainHarvester/i18n/de.ts +185 -0
  32. package/src/tool/rainHarvester/i18n/id.ts +185 -0
  33. package/src/tool/rainHarvester/i18n/it.ts +185 -0
  34. package/src/tool/rainHarvester/i18n/ja.ts +185 -0
  35. package/src/tool/rainHarvester/i18n/ko.ts +185 -0
  36. package/src/tool/rainHarvester/i18n/nl.ts +185 -0
  37. package/src/tool/rainHarvester/i18n/pl.ts +185 -0
  38. package/src/tool/rainHarvester/i18n/pt.ts +185 -0
  39. package/src/tool/rainHarvester/i18n/ru.ts +185 -0
  40. package/src/tool/rainHarvester/i18n/sv.ts +185 -0
  41. package/src/tool/rainHarvester/i18n/tr.ts +185 -0
  42. package/src/tool/rainHarvester/i18n/zh.ts +185 -0
  43. package/src/tool/rainHarvester/index.ts +15 -7
  44. package/src/tool/seedCalculator/i18n/de.ts +213 -0
  45. package/src/tool/seedCalculator/i18n/id.ts +213 -0
  46. package/src/tool/seedCalculator/i18n/it.ts +213 -0
  47. package/src/tool/seedCalculator/i18n/ja.ts +213 -0
  48. package/src/tool/seedCalculator/i18n/ko.ts +213 -0
  49. package/src/tool/seedCalculator/i18n/nl.ts +213 -0
  50. package/src/tool/seedCalculator/i18n/pl.ts +213 -0
  51. package/src/tool/seedCalculator/i18n/pt.ts +213 -0
  52. package/src/tool/seedCalculator/i18n/ru.ts +213 -0
  53. package/src/tool/seedCalculator/i18n/sv.ts +213 -0
  54. package/src/tool/seedCalculator/i18n/tr.ts +213 -0
  55. package/src/tool/seedCalculator/i18n/zh.ts +213 -0
  56. package/src/tool/seedCalculator/index.ts +15 -7
@@ -0,0 +1,235 @@
1
+ import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
+ import type { DigitalCarbonLocaleContent } from '../index';
3
+
4
+ const slug = 'digitale-co2-voetafdruk-calculator';
5
+ const title = 'Digitale CO₂ voetafdruk calculator';
6
+ const description = 'Analyseer de milieu-impact van elke webpagina. Schat het energieverbruik en de CO₂-uitstoot per bezoek.';
7
+
8
+ const faqData = [
9
+ {
10
+ question: 'Wat is de CO₂-voetafdruk van een website?',
11
+ answer: 'Het is de hoeveelheid broeikasgassen, voornamelijk CO₂, die in de atmosfeer wordt uitgestoten als gevolg van de energie die wordt verbruikt door servers, transmissienetwerken en het apparaat van de gebruiker om een webpagina te laden en weer te geven.',
12
+ },
13
+ {
14
+ question: 'Hoe wordt de impact van een website gemeten?',
15
+ answer: 'Het wordt meestal gemeten in grammen CO₂-equivalent (gCO₂e) per bezoek. Een efficiënte website stoot minder dan 0,2 g CO₂ uit, terwijl een niet-geoptimaliseerde pagina meer dan 2 of 3 g per laadbeurt kan overschrijden.',
16
+ },
17
+ {
18
+ question: 'Waarom is internet vervuilend?',
19
+ answer: 'Omdat alle noodzakelijke infrastructuur (datacenters, onderzeese kabels, wifi-routers, smartphones) werkt op elektriciteit die in een groot deel van de wereld nog steeds afkomstig is van het verbranden van kolen of gas.',
20
+ },
21
+ {
22
+ question: 'Hoe kan ik de CO₂ van mijn website verminderen?',
23
+ answer: 'De meest effectieve manier is om het paginagewicht te verminderen: optimaliseer afbeeldingen (WebP), verklein CSS- en JS-bestanden, gebruik lazy loading en kies een hostingprovider die hernieuwbare energie gebruikt.',
24
+ },
25
+ ];
26
+
27
+ const howToData = [
28
+ {
29
+ name: 'Voer de URL in',
30
+ text: 'Typ het webadres van de pagina die u wilt analyseren in het invoerveld.',
31
+ },
32
+ {
33
+ name: 'Start analyse',
34
+ text: 'Klik op de analyseknop om onze tool het gewicht van de paginabronnen te laten schatten.',
35
+ },
36
+ {
37
+ name: 'Bekijk uw beoordeling',
38
+ text: 'Ontvang een cijfer van A+ tot F op basis van de energie-efficiëntie van de geanalyseerde website.',
39
+ },
40
+ {
41
+ name: 'Verbeteringen toepassen',
42
+ text: 'Gebruik de lijst met gepersonaliseerde tips om uw paginagewicht en milieu-impact te verminderen.',
43
+ },
44
+ ];
45
+
46
+ const faqSchema: WithContext<FAQPage> = {
47
+ '@context': 'https://schema.org',
48
+ '@type': 'FAQPage',
49
+ mainEntity: faqData.map((item) => ({
50
+ '@type': 'Question',
51
+ name: item.question,
52
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
53
+ })),
54
+ };
55
+
56
+ const howToSchema: WithContext<HowToThing> = {
57
+ '@context': 'https://schema.org',
58
+ '@type': 'HowTo',
59
+ name: title,
60
+ description,
61
+ step: howToData.map((step, i) => ({
62
+ '@type': 'HowToStep',
63
+ position: i + 1,
64
+ name: step.name,
65
+ text: step.text,
66
+ })),
67
+ };
68
+
69
+ const appSchema: WithContext<SoftwareApplication> = {
70
+ '@context': 'https://schema.org',
71
+ '@type': 'SoftwareApplication',
72
+ name: title,
73
+ description,
74
+ applicationCategory: 'UtilityApplication',
75
+ operatingSystem: 'All',
76
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
77
+ inLanguage: 'nl',
78
+ };
79
+
80
+ export const content: DigitalCarbonLocaleContent = {
81
+ slug,
82
+ title,
83
+ description,
84
+ ui: {
85
+ headInputs: 'URL-analyzer',
86
+ headResults: 'Impactresultaat',
87
+ headTips: 'Optimalisatietips',
88
+ labelUrl: 'Pagina-URL',
89
+ btnAnalyze: 'Website analyseren',
90
+ btnAnalyzing: 'Analyseren...',
91
+ placeholderUrl: 'https://voorbeeld.nl',
92
+ errorInvalidUrl: 'Voer een geldige URL in.',
93
+ errorFetchFailed: 'Kon de website niet analyseren. Probeer een andere URL.',
94
+
95
+ resultTitle: 'Digitale CO₂-voetafdruk',
96
+ resultSubtitle: 'Geschatte pagina efficiëntie',
97
+ co2PerVisit: 'CO₂ per bezoek',
98
+ energyPerVisit: 'Verbruikte energie',
99
+ co2Annual: 'Jaarlijkse CO₂ (100k bezoeken)',
100
+ impactTitle: 'Echte jaarlijkse impact',
101
+ impactTrees: 'Bomen nodig',
102
+ impactKm: 'Gereden km (ca.)',
103
+ treesLabel: 'Bomen',
104
+ kmLabel: 'Kilometer',
105
+
106
+ ratingExcellent: 'Uitstekend. Deze pagina verbruikt zeer weinig energie vergeleken met het wereldwijde gemiddelde.',
107
+ ratingVeryGood: 'Zeer goede efficiëntie. De pagina is goed geoptimaliseerd en heeft een minimale impact.',
108
+ ratingGood: 'Acceptabele efficiëntie. Er is ruimte voor verbetering, maar het is onder het gemiddelde.',
109
+ ratingAverage: 'Gemiddeld. De pagina verbruikt wat verwacht wordt op het huidige web.',
110
+ ratingPoor: 'Bovengemiddeld. Overweeg het optimaliseren van afbeeldingen, scripts en lettertypen.',
111
+ ratingVeryPoor: 'Hoge impact. Het paginagewicht is aanzienlijk en moet worden verminderd.',
112
+ ratingCritical: 'Zeer hoge impact. Er is een grote kans om de paginagrootte te verkleinen.',
113
+
114
+ tipImages: 'Converteer afbeeldingen naar WebP of AVIF om hun gewicht tot 70% te verminderen.',
115
+ tipCompression: 'Schakel Brotli of GZIP in op de server om bronnen te comprimeren.',
116
+ tipLazyLoading: 'Gebruik lazy loading voor afbeeldingen en video\'s buiten het zichtveld.',
117
+ tipHosting: 'Kies hosting met hernieuwbare energie (Cloudflare, Netlify, Vercel).',
118
+ tipThirdParty: 'Verwijder onnodige analysescripts en widgets van derden.',
119
+ tipFonts: 'Laad alleen de lettertypegewichten die u daadwerkelijk gebruikt.',
120
+ tipCache: 'Configureer HTTP-cache-headers om opnieuw downloaden te voorkomen.',
121
+ },
122
+ faqTitle: 'Veelgestelde vragen',
123
+ faq: faqData,
124
+ howTo: howToData,
125
+ bibliographyTitle: 'Web-duurzaamheidsreferenties',
126
+ seo: [
127
+ {
128
+ type: 'title',
129
+ text: 'Digitale CO₂-voetafdruk calculator: Hoeveel CO₂ uw website genereert',
130
+ level: 2,
131
+ },
132
+ {
133
+ type: 'paragraph',
134
+ html: 'Ontdek de echte milieu-impact van elke webpagina. Analyseer het gewicht, schat de grammen CO₂ per bezoek en leer hoe u de digitale vervuiling van uw projecten kunt verminderen.',
135
+ },
136
+ {
137
+ type: 'title',
138
+ text: 'Wat is de digitale CO₂-voetafdruk van een website?',
139
+ level: 2,
140
+ },
141
+ {
142
+ type: 'paragraph',
143
+ html: 'Elke keer dat u een webpagina opent, verbruiken uw apparaat, thuisrouter, onderzeese kabels en servers aan de andere kant van de wereld elektriciteit. Die elektriciteit wordt nog steeds grotendeels opgewekt door het verbranden van fossiele brandstoffen. Het resultaat: een reële hoeveelheid <strong>CO₂ die bij elk bezoek in de atmosfeer wordt uitgestoten</strong>.',
144
+ },
145
+ {
146
+ type: 'paragraph',
147
+ html: 'De <strong>digitale CO₂-voetafdruk</strong> van een website wordt gemeten in grammen CO₂-equivalent (gCO₂e) per bezoek. Een gemiddelde website genereert ongeveer 0,5 g CO₂ per laadbeurt. Hoewel het onbeduidend lijkt, kan een site met 100.000 maandelijkse bezoeken meer dan 600 kg CO₂ per jaar uitstoten, het equivalent van meer dan 3.000 km rijden met een benzineauto.',
148
+ },
149
+ {
150
+ type: 'title',
151
+ text: 'Hoe wordt de CO₂ van een website berekend?',
152
+ level: 2,
153
+ },
154
+ {
155
+ type: 'paragraph',
156
+ html: 'Het gebruikte rekenmodel is gebaseerd op de <strong>Sustainable Web Design Model</strong>-normen, die het energieverbruik in vier hoofdsegmenten verdelen:',
157
+ },
158
+ {
159
+ type: 'card',
160
+ title: 'Gegevensoverdracht',
161
+ html: 'Het totale gewicht van de pagina bepaalt hoeveel gigabyte er wordt verzonden. De standaard gaat uit van <code>0,81 kWh/GB</code> voor netwerkinfrastructuur.',
162
+ },
163
+ {
164
+ type: 'card',
165
+ title: 'Gebruikersapparaat',
166
+ html: 'De computer of mobiele telefoon die de pagina ontvangt, verbruikt energie. Dit wordt geschat op <code>0,52 kWh/GB</code> aan verwerkte gegevens.',
167
+ },
168
+ {
169
+ type: 'card',
170
+ title: 'Koolstofintensiteit',
171
+ html: 'De wereldwijde referentiewaarde van <code>442 gCO₂/kWh</code> wordt gebruikt om het energieverbruik om te zetten in reële koolstofemissies.',
172
+ },
173
+ {
174
+ type: 'card',
175
+ title: 'Caching factor',
176
+ html: 'Het model past een factor van <code>0,75</code> toe, ervan uitgaande dat 25% van de gebruikers bronnen al in de cache heeft.',
177
+ },
178
+ {
179
+ type: 'title',
180
+ text: 'Wat betekent de efficiëntiebeoordeling?',
181
+ level: 2,
182
+ },
183
+ {
184
+ type: 'list',
185
+ items: [
186
+ '<strong>A+ en A:</strong> Minder dan 0,2 g CO₂. Zeer lichte en geoptimaliseerde sites.',
187
+ '<strong>B:</strong> Tussen 0,2 en 0,5 g. Onder het wereldwijde gemiddelde.',
188
+ '<strong>C:</strong> Tussen 0,5 en 1 g. Het gemiddelde voor het huidige web.',
189
+ '<strong>D en E:</strong> Tussen 1 en 4 g. Zware pagina\'s met relevante impact.',
190
+ '<strong>F:</strong> Meer dan 4 g per bezoek. Zeer hoge impact.',
191
+ ],
192
+ },
193
+ {
194
+ type: 'title',
195
+ text: 'Hoe de CO₂-voetafdruk van uw website te verkleinen',
196
+ level: 2,
197
+ },
198
+ {
199
+ type: 'card',
200
+ title: 'Afbeeldingsoptimalisatie',
201
+ html: 'Gebruik formaten zoals <strong>WebP of AVIF</strong> om de grootte tot 80% te verminderen zonder merkbaar kwaliteitsverlies.',
202
+ },
203
+ {
204
+ type: 'card',
205
+ title: 'Servercompressie',
206
+ html: 'Het inschakelen van <strong>Brotli of GZIP</strong> vermindert de grootte van tekstbestanden met wel 70%.',
207
+ },
208
+ {
209
+ type: 'card',
210
+ title: 'Duurzame hosting',
211
+ html: 'Het kiezen van een provider met <strong>gecertificeerde hernieuwbare energie</strong> kan de impact met bijna 100% verminderen.',
212
+ },
213
+ {
214
+ type: 'card',
215
+ title: 'Cache en CDN',
216
+ html: 'Configureer <strong>lange cache-headers</strong> om onnodige downloads te voorkomen.',
217
+ },
218
+ {
219
+ type: 'title',
220
+ text: 'De echte impact van internet op het klimaat',
221
+ level: 2,
222
+ },
223
+ {
224
+ type: 'paragraph',
225
+ html: 'Internet is verantwoordelijk voor tussen de <strong>2% en 4% van de wereldwijde CO₂-emissies</strong>, een cijfer dat vergelijkbaar is met de luchtvaartindustrie. Elke kilobyte die u verwijdert, maakt uw website niet alleen sneller: het vermindert meetbaar de digitale vervuiling.',
226
+ },
227
+ ],
228
+ bibliography: [
229
+ { name: 'Sustainable Web Design Model', url: 'https://sustainablewebdesign.org/' },
230
+ { name: 'Website Carbon Calculator', url: 'https://www.websitecarbon.com/' },
231
+ { name: 'The Green Web Foundation', url: 'https://www.thegreenwebfoundation.org/' },
232
+ { name: 'W3C - Web Sustainability Guidelines', url: 'https://w3c.github.io/sustyweb/' },
233
+ ],
234
+ schemas: [faqSchema, howToSchema, appSchema],
235
+ };
@@ -0,0 +1,235 @@
1
+ import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
+ import type { DigitalCarbonLocaleContent } from '../index';
3
+
4
+ const slug = 'kalkulator-cyfrowego-sladu-weglowego';
5
+ const title = 'Kalkulator cyfrowego śladu węglowego';
6
+ const description = 'Przeanalizuj wpływ dowolnej strony internetowej na środowisko. Oszacuj zużycie energii i emisję CO₂ na wizytę.';
7
+
8
+ const faqData = [
9
+ {
10
+ question: 'Co to jest cyfrowy ślad węglowy strony internetowej?',
11
+ answer: 'To ilość gazów cieplarnianych, głównie CO₂, emitowanych do atmosfery w wyniku energii zużywanej przez serwery, sieci przesyłowe i urządzenia użytkowników w celu załadowania i wyświetlenia strony internetowej.',
12
+ },
13
+ {
14
+ question: 'Jak mierzony jest wpływ strony internetowej?',
15
+ answer: 'Zazwyczaj mierzy się go w gramach ekwiwalentu CO₂ (gCO₂e) na wizytę. Wydajna strona emituje mniej niż 0,2 g CO₂, podczas gdy strona nieozoptymalizowana może przekraczać 2 lub 3 g na każde załadowanie.',
16
+ },
17
+ {
18
+ question: 'Dlaczego internet zanieczyszcza środowisko?',
19
+ answer: 'Ponieważ cała niezbędna infrastruktura (centra danych, kable podmorskie, routery WiFi, smartfony) działa na energię elektryczną, która w dużej części świata wciąż pochodzi ze spalania węgla lub gazu.',
20
+ },
21
+ {
22
+ question: 'Jak mogę zmniejszyć emisję CO₂ mojej strony?',
23
+ answer: 'Najskuteczniejszym sposobem jest zmniejszenie wagi strony: optymalizacja obrazów (WebP), minifikacja plików CSS i JS, stosowanie leniwego ładowania (lazy loading) oraz wybór dostawcy hostingu korzystającego z odnawialnych źródeł energii.',
24
+ },
25
+ ];
26
+
27
+ const howToData = [
28
+ {
29
+ name: 'Wprowadź URL',
30
+ text: 'Wpisz adres strony, którą chcesz przeanalizować, w polu wejściowym.',
31
+ },
32
+ {
33
+ name: 'Rozpocznij analizę',
34
+ text: 'Kliknij przycisk analizy, aby nasze narzędzie mogło oszacować wagę zasobów strony.',
35
+ },
36
+ {
37
+ name: 'Sprawdź swoją ocenę',
38
+ text: 'Otrzymaj ocenę od A+ do F w oparciu o efektywność energetyczną analizowanej strony.',
39
+ },
40
+ {
41
+ name: 'Zastosuj ulepszenia',
42
+ text: 'Skorzystaj z listy spersonalizowanych porad, aby zmniejszyć wagę swojej strony i jej wpływ na środowisko.',
43
+ },
44
+ ];
45
+
46
+ const faqSchema: WithContext<FAQPage> = {
47
+ '@context': 'https://schema.org',
48
+ '@type': 'FAQPage',
49
+ mainEntity: faqData.map((item) => ({
50
+ '@type': 'Question',
51
+ name: item.question,
52
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
53
+ })),
54
+ };
55
+
56
+ const howToSchema: WithContext<HowToThing> = {
57
+ '@context': 'https://schema.org',
58
+ '@type': 'HowTo',
59
+ name: title,
60
+ description,
61
+ step: howToData.map((step, i) => ({
62
+ '@type': 'HowToStep',
63
+ position: i + 1,
64
+ name: step.name,
65
+ text: step.text,
66
+ })),
67
+ };
68
+
69
+ const appSchema: WithContext<SoftwareApplication> = {
70
+ '@context': 'https://schema.org',
71
+ '@type': 'SoftwareApplication',
72
+ name: title,
73
+ description,
74
+ applicationCategory: 'UtilityApplication',
75
+ operatingSystem: 'All',
76
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
77
+ inLanguage: 'pl',
78
+ };
79
+
80
+ export const content: DigitalCarbonLocaleContent = {
81
+ slug,
82
+ title,
83
+ description,
84
+ ui: {
85
+ headInputs: 'Analizator URL',
86
+ headResults: 'Wynik wpływu',
87
+ headTips: 'Wskazówki optymalizacyjne',
88
+ labelUrl: 'URL strony',
89
+ btnAnalyze: 'Analizuj stronę',
90
+ btnAnalyzing: 'Analizowanie...',
91
+ placeholderUrl: 'https://przyklad.pl',
92
+ errorInvalidUrl: 'Wprowadź poprawny adres URL.',
93
+ errorFetchFailed: 'Nie udało się przeanalizować strony. Spróbuj innego adresu.',
94
+
95
+ resultTitle: 'Cyfrowy ślad węglowy',
96
+ resultSubtitle: 'Szacowana wydajność strony',
97
+ co2PerVisit: 'CO₂ na wizytę',
98
+ energyPerVisit: 'Zużyta energia',
99
+ co2Annual: 'Roczne CO₂ (100 tys. wizyt)',
100
+ impactTitle: 'Realny wpływ roczny',
101
+ impactTrees: 'Potrzebne drzewa',
102
+ impactKm: 'Przejechane km (ok.)',
103
+ treesLabel: 'Drzewa',
104
+ kmLabel: 'Kilometry',
105
+
106
+ ratingExcellent: 'Doskonale. Ta strona zużywa bardzo mało energii w porównaniu ze średnią światową.',
107
+ ratingVeryGood: 'Bardzo dobra wydajność. Strona jest dobrze zoptymalizowana i ma minimalny wpływ.',
108
+ ratingGood: 'Akceptowalna wydajność. Istnieje pole do poprawy, ale wynik jest poniżej średniej.',
109
+ ratingAverage: 'Przeciętnie. Strona zużywa tyle, ile oczekuje się od współczesnego internetu.',
110
+ ratingPoor: 'Powyżej średniej. Rozważ optymalizację obrazów, skryptów i czcionek.',
111
+ ratingVeryPoor: 'Duży wpływ. Waga strony jest znacząca i powinna zostać zmniejszona.',
112
+ ratingCritical: 'Bardzo duży wpływ. Istnieje ogromna szansa na zmniejszenie rozmiaru strony.',
113
+
114
+ tipImages: 'Konwertuj obrazy na WebP lub AVIF, aby zmniejszyć ich wagę nawet o 70%.',
115
+ tipCompression: 'Włącz Brotli lub GZIP na serwerze, aby skompresować zasoby.',
116
+ tipLazyLoading: 'Używaj leniwego ładowania dla obrazów i filmów poza obszarem wyświetlania.',
117
+ tipHosting: 'Wybierz hosting korzystający z odnawialnej energii (Cloudflare, Netlify, Vercel).',
118
+ tipThirdParty: 'Usuń niepotrzebne skrypty analityczne i widżety stron trzecich.',
119
+ tipFonts: 'Ładuj tylko te grubości czcionek, których faktycznie używasz.',
120
+ tipCache: 'Skonfiguruj nagłówki pamięci podręcznej HTTP, aby uniknąć ponownego pobierania.',
121
+ },
122
+ faqTitle: 'Często zadawane pytania',
123
+ faq: faqData,
124
+ howTo: howToData,
125
+ bibliographyTitle: 'Źródła dotyczące zrównoważonego rozwoju sieci',
126
+ seo: [
127
+ {
128
+ type: 'title',
129
+ text: 'Kalkulator cyfrowego śladu węglowego: ile CO₂ generuje Twoja strona',
130
+ level: 2,
131
+ },
132
+ {
133
+ type: 'paragraph',
134
+ html: 'Odkryj realny wpływ dowolnej strony internetowej na środowisko. Przeanalizuj jej wagę, oszacuj ilość gramów CO₂ na wizytę i dowiedz się, jak zmniejszyć cyfrowe zanieczyszczenie Twoich projektów.',
135
+ },
136
+ {
137
+ type: 'title',
138
+ text: 'Co to jest cyfrowy ślad węglowy strony internetowej?',
139
+ level: 2,
140
+ },
141
+ {
142
+ type: 'paragraph',
143
+ html: 'Za każdym razem, gdy otwierasz stronę internetową, Twoje urządzenie, domowy router, kable podmorskie i serwery po drugiej stronie świata zużywają prąd. Ta energia wciąż w dużej mierze pochodzi ze spalania paliw kopalnych. Wynik: realna ilość <strong>CO₂ emitowanego do atmosfery przy każdej wizycie</strong>.',
144
+ },
145
+ {
146
+ type: 'paragraph',
147
+ html: '<strong>Cyfrowy ślad węglowy</strong> strony mierzy się w gramach ekwiwalentu CO₂ (gCO₂e) na wizytę. Średnia strona generuje około 0,5 g CO₂ na każde załadowanie. Choć wydaje się to mało, witryna z 100 000 wizyt miesięcznie może wyemitować ponad 600 kg CO₂ rocznie, co odpowiada przejechaniu samochodem spalinowym ponad 3 000 km.',
148
+ },
149
+ {
150
+ type: 'title',
151
+ text: 'Jak oblicza się emisję CO₂ strony internetowej?',
152
+ level: 2,
153
+ },
154
+ {
155
+ type: 'paragraph',
156
+ html: 'Użyty model obliczeniowy opiera się na standardach <strong>Sustainable Web Design Model</strong>, który dzieli zużycie energii na cztery główne segmenty:',
157
+ },
158
+ {
159
+ type: 'card',
160
+ title: 'Transfer danych',
161
+ html: 'Całkowita waga strony określa, ile gigabajtów jest przesyłanych. Standard przyjmuje <code>0,81 kWh/GB</code> dla infrastruktury sieciowej.',
162
+ },
163
+ {
164
+ type: 'card',
165
+ title: 'Urządzenie użytkownika',
166
+ html: 'Komputer lub telefon odbierający stronę zużywa energię. Szacuje się ją na <code>0,52 kWh/GB</code> przetworzonych danych.',
167
+ },
168
+ {
169
+ type: 'card',
170
+ title: 'Intensywność węglowa',
171
+ html: 'Globalna wartość referencyjna <code>442 gCO₂/kWh</code> służy do przeliczenia zużycia energii na realną emisję dwutlenku węgla.',
172
+ },
173
+ {
174
+ type: 'card',
175
+ title: 'Współczynnik cache',
176
+ html: 'Model stosuje współczynnik <code>0,75</code>, zakładając, że 25% użytkowników ma już zasoby w pamięci podręcznej.',
177
+ },
178
+ {
179
+ type: 'title',
180
+ text: 'Co oznacza ocena wydajności?',
181
+ level: 2,
182
+ },
183
+ {
184
+ type: 'list',
185
+ items: [
186
+ '<strong>A+ i A:</strong> Mniej niż 0,2 g CO₂. Strony bardzo lekkie i zoptymalizowane.',
187
+ '<strong>B:</strong> Między 0,2 a 0,5 g. Poniżej średniej światowej.',
188
+ '<strong>C:</strong> Między 0,5 a 1 g. Średnia dla współczesnego internetu.',
189
+ '<strong>D i E:</strong> Między 1 a 4 g. Ciężkie strony o znacznym wpływie.',
190
+ '<strong>F:</strong> Ponad 4 g na wizytę. Bardzo wysoki wpływ.',
191
+ ],
192
+ },
193
+ {
194
+ type: 'title',
195
+ text: 'Jak zmniejszyć ślad węglowy Twojej strony internetowej',
196
+ level: 2,
197
+ },
198
+ {
199
+ type: 'card',
200
+ title: 'Optymalizacja obrazów',
201
+ html: 'Używaj formatów takich jak <strong>WebP lub AVIF</strong>, aby zmniejszyć rozmiar nawet o 80% bez zauważalnej utraty jakości.',
202
+ },
203
+ {
204
+ type: 'card',
205
+ title: 'Kompresja serwera',
206
+ html: 'Włączenie <strong>Brotli lub GZIP</strong> zmniejsza rozmiar plików tekstowych nawet o 70%.',
207
+ },
208
+ {
209
+ type: 'card',
210
+ title: 'Zrównoważony hosting',
211
+ html: 'Wybór dostawcy korzystającego z <strong>certyfikowanej energii odnawialnej</strong> może zmniejszyć wpływ niemal o 100%.',
212
+ },
213
+ {
214
+ type: 'card',
215
+ title: 'Cache i CDN',
216
+ html: 'Skonfiguruj <strong>długie nagłówki cache</strong>, aby uniknąć niepotrzebnego ponownego pobierania.',
217
+ },
218
+ {
219
+ type: 'title',
220
+ text: 'Realny wpływ internetu na klimat',
221
+ level: 2,
222
+ },
223
+ {
224
+ type: 'paragraph',
225
+ html: 'Internet odpowiada za <strong>2% do 4% globalnej emisji CO₂</strong>, co jest wartością porównywalną z przemysłem lotniczym. Każdy wyeliminowany kilobajt nie tylko przyspiesza Twoją stronę: mierzalnie zmniejsza cyfrowe zanieczyszczenie.',
226
+ },
227
+ ],
228
+ bibliography: [
229
+ { name: 'Sustainable Web Design Model', url: 'https://sustainablewebdesign.org/' },
230
+ { name: 'Website Carbon Calculator', url: 'https://www.websitecarbon.com/' },
231
+ { name: 'The Green Web Foundation', url: 'https://www.thegreenwebfoundation.org/' },
232
+ { name: 'W3C - Web Sustainability Guidelines', url: 'https://w3c.github.io/sustyweb/' },
233
+ ],
234
+ schemas: [faqSchema, howToSchema, appSchema],
235
+ };