@jjlmoya/utils-cooking 1.2.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 (130) hide show
  1. package/package.json +60 -0
  2. package/src/category/i18n/en.ts +24 -0
  3. package/src/category/i18n/es.ts +208 -0
  4. package/src/category/i18n/fr.ts +24 -0
  5. package/src/category/index.ts +37 -0
  6. package/src/category/seo.astro +15 -0
  7. package/src/components/PreviewNavSidebar.astro +116 -0
  8. package/src/components/PreviewToolbar.astro +143 -0
  9. package/src/data.ts +11 -0
  10. package/src/env.d.ts +5 -0
  11. package/src/index.ts +32 -0
  12. package/src/layouts/PreviewLayout.astro +117 -0
  13. package/src/pages/[locale]/[slug].astro +146 -0
  14. package/src/pages/[locale].astro +251 -0
  15. package/src/pages/index.astro +4 -0
  16. package/src/tests/faq_count.test.ts +19 -0
  17. package/src/tests/i18n-titles.test.ts +66 -0
  18. package/src/tests/locale_completeness.test.ts +42 -0
  19. package/src/tests/mocks/astro_mock.js +2 -0
  20. package/src/tests/no_h1_in_components.test.ts +48 -0
  21. package/src/tests/seo_length.test.ts +22 -0
  22. package/src/tests/tool_validation.test.ts +17 -0
  23. package/src/tool/american-kitchen-converter/AmericanKitchenEngine.ts +259 -0
  24. package/src/tool/american-kitchen-converter/bibliography.astro +6 -0
  25. package/src/tool/american-kitchen-converter/component.astro +838 -0
  26. package/src/tool/american-kitchen-converter/i18n/en.ts +282 -0
  27. package/src/tool/american-kitchen-converter/i18n/es.ts +281 -0
  28. package/src/tool/american-kitchen-converter/i18n/fr.ts +292 -0
  29. package/src/tool/american-kitchen-converter/index.ts +24 -0
  30. package/src/tool/american-kitchen-converter/seo.astro +8 -0
  31. package/src/tool/banana-ripeness/BananaCare.css +587 -0
  32. package/src/tool/banana-ripeness/BananaEngine.ts +79 -0
  33. package/src/tool/banana-ripeness/bibliography.astro +6 -0
  34. package/src/tool/banana-ripeness/component.astro +285 -0
  35. package/src/tool/banana-ripeness/i18n/en.ts +177 -0
  36. package/src/tool/banana-ripeness/i18n/es.ts +177 -0
  37. package/src/tool/banana-ripeness/i18n/fr.ts +177 -0
  38. package/src/tool/banana-ripeness/index.ts +24 -0
  39. package/src/tool/banana-ripeness/seo.astro +8 -0
  40. package/src/tool/brine/bibliography.astro +6 -0
  41. package/src/tool/brine/component.astro +884 -0
  42. package/src/tool/brine/i18n/en.ts +221 -0
  43. package/src/tool/brine/i18n/es.ts +222 -0
  44. package/src/tool/brine/i18n/fr.ts +221 -0
  45. package/src/tool/brine/index.ts +26 -0
  46. package/src/tool/brine/seo.astro +8 -0
  47. package/src/tool/cookware-guide/CookwareGuide.css +487 -0
  48. package/src/tool/cookware-guide/bibliography.astro +6 -0
  49. package/src/tool/cookware-guide/component.astro +164 -0
  50. package/src/tool/cookware-guide/i18n/en.ts +163 -0
  51. package/src/tool/cookware-guide/i18n/es.ts +163 -0
  52. package/src/tool/cookware-guide/i18n/fr.ts +164 -0
  53. package/src/tool/cookware-guide/index.ts +24 -0
  54. package/src/tool/cookware-guide/init.ts +174 -0
  55. package/src/tool/cookware-guide/seo.astro +8 -0
  56. package/src/tool/egg-timer/EggTimer.css +503 -0
  57. package/src/tool/egg-timer/bibliography.astro +14 -0
  58. package/src/tool/egg-timer/component.astro +281 -0
  59. package/src/tool/egg-timer/i18n/en.ts +230 -0
  60. package/src/tool/egg-timer/i18n/es.ts +222 -0
  61. package/src/tool/egg-timer/i18n/fr.ts +121 -0
  62. package/src/tool/egg-timer/index.ts +27 -0
  63. package/src/tool/egg-timer/seo.astro +39 -0
  64. package/src/tool/ingredient-rescaler/IngredientRescaler.css +308 -0
  65. package/src/tool/ingredient-rescaler/bibliography.astro +6 -0
  66. package/src/tool/ingredient-rescaler/component.astro +107 -0
  67. package/src/tool/ingredient-rescaler/i18n/en.ts +265 -0
  68. package/src/tool/ingredient-rescaler/i18n/es.ts +268 -0
  69. package/src/tool/ingredient-rescaler/i18n/fr.ts +207 -0
  70. package/src/tool/ingredient-rescaler/index.ts +24 -0
  71. package/src/tool/ingredient-rescaler/init.ts +200 -0
  72. package/src/tool/ingredient-rescaler/seo.astro +8 -0
  73. package/src/tool/kitchen-timer/KitchenTimer.css +325 -0
  74. package/src/tool/kitchen-timer/bibliography.astro +6 -0
  75. package/src/tool/kitchen-timer/component.astro +341 -0
  76. package/src/tool/kitchen-timer/i18n/en.ts +154 -0
  77. package/src/tool/kitchen-timer/i18n/es.ts +154 -0
  78. package/src/tool/kitchen-timer/i18n/fr.ts +154 -0
  79. package/src/tool/kitchen-timer/index.ts +26 -0
  80. package/src/tool/kitchen-timer/init.ts +55 -0
  81. package/src/tool/kitchen-timer/lib/AudioHelper.ts +27 -0
  82. package/src/tool/kitchen-timer/lib/DockManager.ts +97 -0
  83. package/src/tool/kitchen-timer/lib/KitchenTimer.ts +264 -0
  84. package/src/tool/kitchen-timer/seo.astro +8 -0
  85. package/src/tool/meringue-peak/MeringueCalculator.css +298 -0
  86. package/src/tool/meringue-peak/bibliography.astro +6 -0
  87. package/src/tool/meringue-peak/component.astro +169 -0
  88. package/src/tool/meringue-peak/i18n/en.ts +257 -0
  89. package/src/tool/meringue-peak/i18n/es.ts +234 -0
  90. package/src/tool/meringue-peak/i18n/fr.ts +234 -0
  91. package/src/tool/meringue-peak/index.ts +24 -0
  92. package/src/tool/meringue-peak/seo.astro +8 -0
  93. package/src/tool/mold-scaler/MoldScaler.css +406 -0
  94. package/src/tool/mold-scaler/bibliography.astro +6 -0
  95. package/src/tool/mold-scaler/component.astro +126 -0
  96. package/src/tool/mold-scaler/i18n/en.ts +268 -0
  97. package/src/tool/mold-scaler/i18n/es.ts +269 -0
  98. package/src/tool/mold-scaler/i18n/fr.ts +276 -0
  99. package/src/tool/mold-scaler/index.ts +26 -0
  100. package/src/tool/mold-scaler/init.ts +264 -0
  101. package/src/tool/mold-scaler/seo.astro +8 -0
  102. package/src/tool/pizza/Pizza.css +569 -0
  103. package/src/tool/pizza/bibliography.astro +6 -0
  104. package/src/tool/pizza/calculator.ts +143 -0
  105. package/src/tool/pizza/component.astro +237 -0
  106. package/src/tool/pizza/i18n/en.ts +288 -0
  107. package/src/tool/pizza/i18n/es.ts +289 -0
  108. package/src/tool/pizza/i18n/fr.ts +288 -0
  109. package/src/tool/pizza/index.ts +27 -0
  110. package/src/tool/pizza/seo.astro +8 -0
  111. package/src/tool/roux-guide/RouxGuide.css +483 -0
  112. package/src/tool/roux-guide/bibliography.astro +6 -0
  113. package/src/tool/roux-guide/component.astro +194 -0
  114. package/src/tool/roux-guide/i18n/en.ts +233 -0
  115. package/src/tool/roux-guide/i18n/es.ts +225 -0
  116. package/src/tool/roux-guide/i18n/fr.ts +225 -0
  117. package/src/tool/roux-guide/index.ts +24 -0
  118. package/src/tool/roux-guide/init.ts +187 -0
  119. package/src/tool/roux-guide/seo.astro +8 -0
  120. package/src/tool/sourdough-calculator/SourdoughCalculator.css +369 -0
  121. package/src/tool/sourdough-calculator/bibliography.astro +6 -0
  122. package/src/tool/sourdough-calculator/component.astro +198 -0
  123. package/src/tool/sourdough-calculator/i18n/en.ts +242 -0
  124. package/src/tool/sourdough-calculator/i18n/es.ts +243 -0
  125. package/src/tool/sourdough-calculator/i18n/fr.ts +248 -0
  126. package/src/tool/sourdough-calculator/index.ts +24 -0
  127. package/src/tool/sourdough-calculator/init.ts +131 -0
  128. package/src/tool/sourdough-calculator/seo.astro +8 -0
  129. package/src/tools.ts +29 -0
  130. package/src/types.ts +73 -0
@@ -0,0 +1,292 @@
1
+ import type { ToolLocaleContent } from "../../../types";
2
+
3
+ export const content: ToolLocaleContent = {
4
+ slug: "convertisseur-mesures-cuisine-americaine-cups-grammes",
5
+ title: "Convertisseur de Cuisine Américaine : Cups en Grammes, Fahrenheit",
6
+ description:
7
+ "Convertissez les cups, tablespoons et Fahrenheit en système métrique. Votre boussole pour décoder les recettes américaines avec une précision professionnelle.",
8
+ ui: {
9
+ copied: "Copié",
10
+ noHistory: "Pas d'historique",
11
+ load: "Charger",
12
+ delete: "Supprimer",
13
+ tabCups: "Cups en Grammes",
14
+ tabSpoons: "Cuillères en G",
15
+ tabTemperatures: "Températures",
16
+ tabCupsAriaLabel: "Conversion Cups en Grammes",
17
+ tabSpoonsAriaLabel: "Conversion Cuillères en Grammes",
18
+ tabTempsAriaLabel: "Températures du Four",
19
+ stepSelectIngredient: "Sélectionnez l'Ingrédient",
20
+ stepHowManyCups: "Combien de Cups ?",
21
+ stepSelectMeasure: "Sélectionnez la Mesure",
22
+ stepQuantity: "Quantité",
23
+ stepOvenConversion: "Conversion de Four",
24
+ stepFrequentTemps: "Températures de Recette Fréquentes",
25
+ cupFlour: "Farine",
26
+ cupFlourSub: "120g / cup",
27
+ cupWhiteSugar: "Sucre Blanc",
28
+ cupWhiteSugarSub: "200g / cup",
29
+ cupBrownSugar: "Sucre Roux",
30
+ cupBrownSugarSub: "220g / cup",
31
+ cupPowderSugar: "Sucre Glace",
32
+ cupPowderSugarSub: "115g / cup",
33
+ cupButter: "Beurre",
34
+ cupButterSub: "227g / cup",
35
+ cupCocoa: "Cacao en Poudre",
36
+ cupCocoaSub: "85g / cup",
37
+ cupLiquids: "Liquides",
38
+ cupLiquidsSub: "240g / cup",
39
+ cupOats: "Avoine",
40
+ cupOatsSub: "90g / cup",
41
+ cupFlourAriaLabel: "Farine",
42
+ cupWhiteSugarAriaLabel: "Sucre Blanc",
43
+ cupBrownSugarAriaLabel: "Sucre Roux",
44
+ cupPowderSugarAriaLabel: "Sucre Glace",
45
+ cupButterAriaLabel: "Beurre",
46
+ cupCocoaAriaLabel: "Cacao",
47
+ cupLiquidsAriaLabel: "Liquide",
48
+ cupOatsAriaLabel: "Avoine",
49
+ stepperMinus: "Moins",
50
+ stepperPlus: "Plus",
51
+ cupsAmountLabel: "Nombre de Cups",
52
+ spoonQuantityLabel: "Quantité",
53
+ cupQuick1_4: "1/4 Cup",
54
+ cupQuick1_3: "1/3 Cup",
55
+ cupQuick1_2: "1/2 Cup",
56
+ cupQuick1: "1 Cup",
57
+ unitGrams: "Grammes",
58
+ unitGramsML: "Grammes / Millilitres",
59
+ spoonMeasureLabel: "Sélectionnez la Mesure",
60
+ spoonTablespoon: "Cuillère à Soupe (Tbsp)",
61
+ spoonTeaspoon: "Cuillère à Café (tsp)",
62
+ spoonTablespoonAriaLabel: "Grosse cuillère",
63
+ spoonTeaspoonAriaLabel: "Petite cuillère",
64
+ spoonSelectIngredient: "Sélectionnez l'Ingrédient",
65
+ spoonLeavening: "Levure",
66
+ spoonLeaveningSub: "Poudre à Lever",
67
+ spoonSalt: "Sel Fin",
68
+ spoonSaltSub: "Minéral",
69
+ spoonSugar: "Sucre Blanc",
70
+ spoonSugarSub: "Granulé",
71
+ spoonLiquids: "Liquides",
72
+ spoonLiquidsSub: "Eau, Huile",
73
+ spoonLeavingAriaLabel: "Levure Chimique",
74
+ spoonSaltAriaLabel: "Sel",
75
+ spoonSugarAriaLabel: "Sucre Blanc",
76
+ spoonLiquidsAriaLabel: "Liquide",
77
+ spoonQuick1_4: "1/4",
78
+ spoonQuick1_2: "1/2",
79
+ spoonQuick1: "1",
80
+ spoonQuick2: "2",
81
+ tempFahrenheit: "Fahrenheit (°F)",
82
+ tempCelsius: "Celsius (°C)",
83
+ tempFahrenheitAriaLabel: "Fahrenheit",
84
+ tempCelsiusAriaLabel: "Celsius",
85
+ tempPreset275: "275°F",
86
+ tempPreset275Desc: "135°C - Séchage",
87
+ tempPreset275AriaLabel: "Régler 275 Fahrenheit",
88
+ tempPreset325: "325°F",
89
+ tempPreset325Desc: "165°C - Gâteau dense",
90
+ tempPreset325AriaLabel: "Régler 325 Fahrenheit",
91
+ tempPreset350: "350°F",
92
+ tempPreset350Desc: "175°C - Cuisson standard",
93
+ tempPreset350AriaLabel: "Régler 350 Fahrenheit",
94
+ tempPreset400: "400°F",
95
+ tempPreset400Desc: "200°C - Pains / Tartes",
96
+ tempPreset400AriaLabel: "Régler 400 Fahrenheit",
97
+ tempPreset425: "425°F",
98
+ tempPreset425Desc: "220°C - Pizzas / Feuilletés",
99
+ tempPreset425AriaLabel: "Régler 425 Fahrenheit",
100
+ },
101
+ faqTitle: "Questions Fréquentes sur les Mesures Américaines",
102
+ faq: [
103
+ {
104
+ question: "Quelle est la différence entre 1 cup et 250ml ?",
105
+ answer: "1 cup américaine vaut environ 236,6ml, et non 250ml. En cuisine pratique, on utilise 240ml. Cette différence de 4% peut impacter les recettes sensibles comme les macarons.",
106
+ },
107
+ {
108
+ question: "Pourquoi le poids de la farine varie-t-il ?",
109
+ answer: "La farine se tasse avec le temps. Une cup de farine fraîchement tamisée pèse moins qu'une cup de farine restée longtemps dans son sac. Les professionnels pèsent toujours leurs ingrédients.",
110
+ },
111
+ {
112
+ question: "Quelle est la différence entre Tbsp et tsp ?",
113
+ answer: "1 Tablespoon (Tbsp) = 15ml. 1 Teaspoon (tsp) = 5ml. Il y a exactement trois cuillères à café dans une cuillère à soupe.",
114
+ },
115
+ {
116
+ question: "La cup américaine est-elle identique à la cup impériale ?",
117
+ answer: "Non. Une cup US fait 236ml, tandis qu'une cup Impériale (UK) fait 284ml, soit 20% de différence ! La plupart des blogs utilisent le standard US.",
118
+ },
119
+ {
120
+ question: "À quelle température correspond le Thermostat 6 ?",
121
+ answer: "Le Thermostat 6 correspond à 180°C, soit environ 350°F. C'est la température de cuisson la plus courante.",
122
+ },
123
+ ],
124
+ bibliographyTitle: "Bibliographie et Ressources",
125
+ bibliography: [
126
+ {
127
+ name: "King Arthur Baking: Ingredient Weight Chart",
128
+ url: "https://www.kingarthurbaking.com/learn/ingredient-weight-chart",
129
+ },
130
+ {
131
+ name: "Culinary Institute of America: Conversions and Equivalents",
132
+ url: "https://www.ciachef.edu/",
133
+ },
134
+ ],
135
+ howTo: [
136
+ {
137
+ name: "Sélectionnez le type de conversion",
138
+ text: "Choisissez entre Cups en Grammes, Cuillères en Grammes ou Fahrenheit en Celsius.",
139
+ },
140
+ {
141
+ name: "Choisissez l'ingrédient",
142
+ text: "Chaque aliment a une densité différente. La farine, le sucre ou le beurre pèsent différemment.",
143
+ },
144
+ {
145
+ name: "Entrez la quantité",
146
+ text: "Saisissez le nombre de cups ou de degrés. La conversion métrique s'affiche instantanément.",
147
+ },
148
+ {
149
+ name: "Ajustez votre recette",
150
+ text: "Avec des mesures précises, vous pouvez reproduire n'importe quelle recette internationale avec succès.",
151
+ },
152
+ ],
153
+ bibliography: [
154
+ {
155
+ name: "King Arthur Baking: Ingredient Weight Chart",
156
+ url: "https://www.kingarthurbaking.com/learn/ingredient-weight-chart",
157
+ },
158
+ {
159
+ name: "Culinary Institute of America: Conversions and Equivalents",
160
+ url: "https://www.ciachef.edu/",
161
+ },
162
+ ],
163
+ seo: [
164
+ {
165
+ type: "title",
166
+ text: "Guide Maître pour la Conversion des Mesures Américaines",
167
+ level: 2,
168
+ },
169
+ {
170
+ type: "paragraph",
171
+ html: "Convertir les <strong>cups en grammes</strong> ou les <strong>Fahrenheit en Celsius</strong> est essentiel pour réussir les recettes internationales. La cuisine US repose sur le volume, ce qui peut fausser les quantités de farine jusqu'à 25%.",
172
+ },
173
+ {
174
+ type: "stats",
175
+ columns: 4,
176
+ items: [
177
+ {
178
+ value: "120g",
179
+ label: "1 Cup de Farine",
180
+ icon: "mdi:grain",
181
+ },
182
+ {
183
+ value: "227g",
184
+ label: "Bâton de Beurre",
185
+ icon: "mdi:cube-outline",
186
+ },
187
+ {
188
+ value: "175°C",
189
+ label: "Équivalent 350°F",
190
+ icon: "mdi:thermometer",
191
+ },
192
+ {
193
+ value: "240ml",
194
+ label: "Volume 1 Cup",
195
+ icon: "mdi:water-percent",
196
+ },
197
+ ],
198
+ },
199
+ {
200
+ type: "title",
201
+ text: "Différences Critiques entre Volume et Poids",
202
+ level: 3,
203
+ },
204
+ {
205
+ type: "comparative",
206
+ columns: 2,
207
+ items: [
208
+ {
209
+ title: "Mesure par Volume (Cups)",
210
+ icon: "mdi:cup-water",
211
+ description: "Utilisé dans les foyers américains. Mesure l'espace occupé.",
212
+ points: [
213
+ "Très dépendant du tassement de la poudre",
214
+ "Erreur fréquente de 20-30% sur la farine",
215
+ "Inconstant selon les marques de tasses",
216
+ "Nécessite de tamiser pour plus de précision",
217
+ ],
218
+ },
219
+ {
220
+ title: "Mesure par Poids (Grammes)",
221
+ icon: "mdi:scale-balance",
222
+ description: "Le standard de la pâtisserie professionnelle. Précision absolue.",
223
+ highlight: true,
224
+ points: [
225
+ "Précision de +/- 1g garantie",
226
+ "Résultats constants et reproductibles",
227
+ "Moins de vaisselle (un seul bol)",
228
+ "Facilite la mise à l'échelle mathématique",
229
+ ],
230
+ },
231
+ ],
232
+ },
233
+ {
234
+ type: "title",
235
+ text: "Équivalences d'Ingrédients Courants",
236
+ level: 3,
237
+ },
238
+ {
239
+ type: "table",
240
+ headers: ["Ingrédient", "1 Cup (Volume)", "Grammes (Poids)", "Densité"],
241
+ rows: [
242
+ ["Farine de Blé", "1 Cup", "120g", "Faible"],
243
+ ["Sucre Blanc", "1 Cup", "200g", "Moyenne"],
244
+ ["Sucre Roux", "1 Cup", "220g (tassé)", "Haute"],
245
+ ["Beurre", "1 Cup (2 bâtons)", "227g", "Haute"],
246
+ ["Cacao en Poudre", "1 Cup", "85g", "Très Faible"],
247
+ ],
248
+ },
249
+ {
250
+ type: "diagnostic",
251
+ variant: "warning",
252
+ title: "Votre Gâteau est-il trop sec ?",
253
+ html: "L'erreur classique avec les cups est de plonger la tasse dans le sac de farine. Cela tasse la poudre et vous risquez d'ajouter 40g de farine excédentaire. La solution est de <strong>toujours convertir en grammes</strong>.",
254
+ },
255
+ {
256
+ type: "title",
257
+ text: "Glossaire des Unités US",
258
+ level: 3,
259
+ },
260
+ {
261
+ type: "glossary",
262
+ items: [
263
+ {
264
+ term: "Cup",
265
+ definition: "Unité de volume valant environ 240ml. Base de la cuisine US.",
266
+ },
267
+ {
268
+ term: "Tbsp",
269
+ definition: "Cuillère à soupe, valant 15ml ou 3 cuillères à café.",
270
+ },
271
+ {
272
+ term: "tsp",
273
+ definition: "Cuillère à café, valant 5ml. Crucial pour le sel et la levure.",
274
+ },
275
+ {
276
+ term: "Bâton de Beurre",
277
+ definition: "Format standard aux USA pesant exactement 113,5g (demi-cup).",
278
+ },
279
+ ],
280
+ },
281
+ {
282
+ type: "tip",
283
+ title: "L'Astuce de la Cuillère",
284
+ html: "Si vous n'avez pas de balance, remplissez votre cup à la cuillère sans tasser, puis rasez avec un couteau. C'est bien plus précis.",
285
+ },
286
+ {
287
+ type: "paragraph",
288
+ html: "Utiliser un convertisseur professionnel transforme la frustration des recettes étrangères en succès culinaire.",
289
+ },
290
+ ],
291
+ schemas: [],
292
+ };
@@ -0,0 +1,24 @@
1
+ import type { CookingToolEntry, ToolDefinition } from '../../types';
2
+ import AmericanKitchenConverterComponent from './component.astro';
3
+ import AmericanKitchenConverterSEO from './seo.astro';
4
+ import AmericanKitchenConverterBibliography from './bibliography.astro';
5
+
6
+ export const americanKitchenConverter: CookingToolEntry = {
7
+ id: 'american-kitchen-converter',
8
+ icons: {
9
+ bg: 'mdi:cup-outline',
10
+ fg: 'mdi:fire',
11
+ },
12
+ i18n: {
13
+ es: () => import('./i18n/es').then((m) => m.content),
14
+ en: () => import('./i18n/en').then((m) => m.content),
15
+ fr: () => import('./i18n/fr').then((m) => m.content),
16
+ },
17
+ };
18
+
19
+ export const AMERICAN_KITCHEN_CONVERTER_TOOL: ToolDefinition = {
20
+ entry: americanKitchenConverter,
21
+ Component: AmericanKitchenConverterComponent,
22
+ SEOComponent: AmericanKitchenConverterSEO,
23
+ BibliographyComponent: AmericanKitchenConverterBibliography,
24
+ };
@@ -0,0 +1,8 @@
1
+ ---
2
+ import { SEORenderer } from "@jjlmoya/utils-shared";
3
+ import { content } from "./i18n/es";
4
+
5
+ const locale = "es";
6
+ ---
7
+
8
+ <SEORenderer content={{ sections: content.seo, locale }} />