@jjlmoya/utils-cooking 1.12.0 → 1.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +2 -1
- package/src/category/i18n/de.ts +94 -0
- package/src/category/i18n/id.ts +94 -0
- package/src/category/i18n/it.ts +94 -0
- package/src/category/i18n/ja.ts +94 -0
- package/src/category/i18n/ko.ts +94 -0
- package/src/category/i18n/nl.ts +94 -0
- package/src/category/i18n/pl.ts +94 -0
- package/src/category/i18n/pt.ts +94 -0
- package/src/category/i18n/ru.ts +94 -0
- package/src/category/i18n/sv.ts +94 -0
- package/src/category/i18n/tr.ts +94 -0
- package/src/category/i18n/zh.ts +94 -0
- package/src/category/index.ts +12 -0
- package/src/tests/faq_count.test.ts +1 -1
- package/src/tests/i18n_coverage.test.ts +36 -0
- package/src/tests/locale_completeness.test.ts +1 -1
- package/src/tests/title_quality.test.ts +1 -1
- package/src/tool/american-kitchen-converter/i18n/de.ts +356 -0
- package/src/tool/american-kitchen-converter/i18n/id.ts +356 -0
- package/src/tool/american-kitchen-converter/i18n/it.ts +356 -0
- package/src/tool/american-kitchen-converter/i18n/ja.ts +356 -0
- package/src/tool/american-kitchen-converter/i18n/ko.ts +356 -0
- package/src/tool/american-kitchen-converter/i18n/nl.ts +356 -0
- package/src/tool/american-kitchen-converter/i18n/pl.ts +356 -0
- package/src/tool/american-kitchen-converter/i18n/pt.ts +356 -0
- package/src/tool/american-kitchen-converter/i18n/ru.ts +356 -0
- package/src/tool/american-kitchen-converter/i18n/sv.ts +356 -0
- package/src/tool/american-kitchen-converter/i18n/tr.ts +356 -0
- package/src/tool/american-kitchen-converter/i18n/zh.ts +356 -0
- package/src/tool/american-kitchen-converter/index.ts +12 -0
- package/src/tool/banana-ripeness/i18n/de.ts +248 -0
- package/src/tool/banana-ripeness/i18n/id.ts +248 -0
- package/src/tool/banana-ripeness/i18n/it.ts +248 -0
- package/src/tool/banana-ripeness/i18n/ja.ts +248 -0
- package/src/tool/banana-ripeness/i18n/ko.ts +248 -0
- package/src/tool/banana-ripeness/i18n/nl.ts +248 -0
- package/src/tool/banana-ripeness/i18n/pl.ts +248 -0
- package/src/tool/banana-ripeness/i18n/pt.ts +248 -0
- package/src/tool/banana-ripeness/i18n/ru.ts +248 -0
- package/src/tool/banana-ripeness/i18n/sv.ts +248 -0
- package/src/tool/banana-ripeness/i18n/tr.ts +248 -0
- package/src/tool/banana-ripeness/i18n/zh.ts +248 -0
- package/src/tool/banana-ripeness/index.ts +12 -0
- package/src/tool/brine/i18n/de.ts +253 -0
- package/src/tool/brine/i18n/id.ts +253 -0
- package/src/tool/brine/i18n/it.ts +253 -0
- package/src/tool/brine/i18n/ja.ts +253 -0
- package/src/tool/brine/i18n/ko.ts +253 -0
- package/src/tool/brine/i18n/nl.ts +253 -0
- package/src/tool/brine/i18n/pl.ts +253 -0
- package/src/tool/brine/i18n/pt.ts +253 -0
- package/src/tool/brine/i18n/ru.ts +253 -0
- package/src/tool/brine/i18n/sv.ts +253 -0
- package/src/tool/brine/i18n/tr.ts +253 -0
- package/src/tool/brine/i18n/zh.ts +253 -0
- package/src/tool/brine/index.ts +12 -0
- package/src/tool/cookware-guide/i18n/de.ts +200 -0
- package/src/tool/cookware-guide/i18n/fr.ts +2 -2
- package/src/tool/cookware-guide/i18n/id.ts +200 -0
- package/src/tool/cookware-guide/i18n/it.ts +200 -0
- package/src/tool/cookware-guide/i18n/ja.ts +200 -0
- package/src/tool/cookware-guide/i18n/ko.ts +200 -0
- package/src/tool/cookware-guide/i18n/nl.ts +200 -0
- package/src/tool/cookware-guide/i18n/pl.ts +200 -0
- package/src/tool/cookware-guide/i18n/pt.ts +200 -0
- package/src/tool/cookware-guide/i18n/ru.ts +200 -0
- package/src/tool/cookware-guide/i18n/sv.ts +200 -0
- package/src/tool/cookware-guide/i18n/tr.ts +200 -0
- package/src/tool/cookware-guide/i18n/zh.ts +200 -0
- package/src/tool/cookware-guide/index.ts +12 -0
- package/src/tool/egg-timer/i18n/de.ts +252 -0
- package/src/tool/egg-timer/i18n/id.ts +252 -0
- package/src/tool/egg-timer/i18n/it.ts +252 -0
- package/src/tool/egg-timer/i18n/ja.ts +252 -0
- package/src/tool/egg-timer/i18n/ko.ts +252 -0
- package/src/tool/egg-timer/i18n/nl.ts +252 -0
- package/src/tool/egg-timer/i18n/pl.ts +252 -0
- package/src/tool/egg-timer/i18n/pt.ts +252 -0
- package/src/tool/egg-timer/i18n/ru.ts +252 -0
- package/src/tool/egg-timer/i18n/sv.ts +252 -0
- package/src/tool/egg-timer/i18n/tr.ts +252 -0
- package/src/tool/egg-timer/i18n/zh.ts +252 -0
- package/src/tool/egg-timer/index.ts +12 -0
- package/src/tool/ingredient-rescaler/i18n/de.ts +244 -0
- package/src/tool/ingredient-rescaler/i18n/id.ts +244 -0
- package/src/tool/ingredient-rescaler/i18n/it.ts +244 -0
- package/src/tool/ingredient-rescaler/i18n/ja.ts +244 -0
- package/src/tool/ingredient-rescaler/i18n/ko.ts +244 -0
- package/src/tool/ingredient-rescaler/i18n/nl.ts +244 -0
- package/src/tool/ingredient-rescaler/i18n/pl.ts +244 -0
- package/src/tool/ingredient-rescaler/i18n/pt.ts +244 -0
- package/src/tool/ingredient-rescaler/i18n/ru.ts +244 -0
- package/src/tool/ingredient-rescaler/i18n/sv.ts +244 -0
- package/src/tool/ingredient-rescaler/i18n/tr.ts +244 -0
- package/src/tool/ingredient-rescaler/i18n/zh.ts +244 -0
- package/src/tool/ingredient-rescaler/index.ts +12 -0
- package/src/tool/kitchen-timer/i18n/de.ts +174 -0
- package/src/tool/kitchen-timer/i18n/id.ts +170 -0
- package/src/tool/kitchen-timer/i18n/it.ts +174 -0
- package/src/tool/kitchen-timer/i18n/ja.ts +170 -0
- package/src/tool/kitchen-timer/i18n/ko.ts +170 -0
- package/src/tool/kitchen-timer/i18n/nl.ts +174 -0
- package/src/tool/kitchen-timer/i18n/pl.ts +170 -0
- package/src/tool/kitchen-timer/i18n/pt.ts +174 -0
- package/src/tool/kitchen-timer/i18n/ru.ts +170 -0
- package/src/tool/kitchen-timer/i18n/sv.ts +170 -0
- package/src/tool/kitchen-timer/i18n/tr.ts +170 -0
- package/src/tool/kitchen-timer/i18n/zh.ts +170 -0
- package/src/tool/kitchen-timer/index.ts +12 -0
- package/src/tool/meringue-peak/i18n/de.ts +221 -0
- package/src/tool/meringue-peak/i18n/id.ts +209 -0
- package/src/tool/meringue-peak/i18n/it.ts +210 -0
- package/src/tool/meringue-peak/i18n/ja.ts +210 -0
- package/src/tool/meringue-peak/i18n/ko.ts +210 -0
- package/src/tool/meringue-peak/i18n/nl.ts +210 -0
- package/src/tool/meringue-peak/i18n/pl.ts +210 -0
- package/src/tool/meringue-peak/i18n/pt.ts +210 -0
- package/src/tool/meringue-peak/i18n/ru.ts +210 -0
- package/src/tool/meringue-peak/i18n/sv.ts +210 -0
- package/src/tool/meringue-peak/i18n/tr.ts +210 -0
- package/src/tool/meringue-peak/i18n/zh.ts +210 -0
- package/src/tool/meringue-peak/index.ts +12 -0
- package/src/tool/mold-scaler/i18n/de.ts +183 -0
- package/src/tool/mold-scaler/i18n/id.ts +169 -0
- package/src/tool/mold-scaler/i18n/it.ts +170 -0
- package/src/tool/mold-scaler/i18n/ja.ts +170 -0
- package/src/tool/mold-scaler/i18n/ko.ts +170 -0
- package/src/tool/mold-scaler/i18n/nl.ts +170 -0
- package/src/tool/mold-scaler/i18n/pl.ts +170 -0
- package/src/tool/mold-scaler/i18n/pt.ts +170 -0
- package/src/tool/mold-scaler/i18n/ru.ts +170 -0
- package/src/tool/mold-scaler/i18n/sv.ts +170 -0
- package/src/tool/mold-scaler/i18n/tr.ts +170 -0
- package/src/tool/mold-scaler/i18n/zh.ts +170 -0
- package/src/tool/mold-scaler/index.ts +12 -0
- package/src/tool/pizza/i18n/de.ts +168 -0
- package/src/tool/pizza/i18n/id.ts +125 -0
- package/src/tool/pizza/i18n/it.ts +172 -0
- package/src/tool/pizza/i18n/ja.ts +125 -0
- package/src/tool/pizza/i18n/ko.ts +125 -0
- package/src/tool/pizza/i18n/nl.ts +164 -0
- package/src/tool/pizza/i18n/pl.ts +125 -0
- package/src/tool/pizza/i18n/pt.ts +168 -0
- package/src/tool/pizza/i18n/ru.ts +151 -0
- package/src/tool/pizza/i18n/sv.ts +164 -0
- package/src/tool/pizza/i18n/tr.ts +125 -0
- package/src/tool/pizza/i18n/zh.ts +125 -0
- package/src/tool/pizza/index.ts +12 -0
- package/src/tool/roux-guide/i18n/de.ts +165 -0
- package/src/tool/roux-guide/i18n/id.ts +139 -0
- package/src/tool/roux-guide/i18n/it.ts +165 -0
- package/src/tool/roux-guide/i18n/ja.ts +139 -0
- package/src/tool/roux-guide/i18n/ko.ts +139 -0
- package/src/tool/roux-guide/i18n/nl.ts +165 -0
- package/src/tool/roux-guide/i18n/pl.ts +139 -0
- package/src/tool/roux-guide/i18n/pt.ts +165 -0
- package/src/tool/roux-guide/i18n/ru.ts +139 -0
- package/src/tool/roux-guide/i18n/sv.ts +139 -0
- package/src/tool/roux-guide/i18n/tr.ts +139 -0
- package/src/tool/roux-guide/i18n/zh.ts +139 -0
- package/src/tool/roux-guide/index.ts +12 -0
- package/src/tool/sourdough-calculator/i18n/de.ts +142 -0
- package/src/tool/sourdough-calculator/i18n/id.ts +116 -0
- package/src/tool/sourdough-calculator/i18n/it.ts +142 -0
- package/src/tool/sourdough-calculator/i18n/ja.ts +116 -0
- package/src/tool/sourdough-calculator/i18n/ko.ts +116 -0
- package/src/tool/sourdough-calculator/i18n/nl.ts +116 -0
- package/src/tool/sourdough-calculator/i18n/pl.ts +116 -0
- package/src/tool/sourdough-calculator/i18n/pt.ts +142 -0
- package/src/tool/sourdough-calculator/i18n/ru.ts +116 -0
- package/src/tool/sourdough-calculator/i18n/sv.ts +116 -0
- package/src/tool/sourdough-calculator/i18n/tr.ts +116 -0
- package/src/tool/sourdough-calculator/i18n/zh.ts +116 -0
- package/src/tool/sourdough-calculator/index.ts +12 -0
|
@@ -0,0 +1,252 @@
|
|
|
1
|
+
import type { ToolLocaleContent } from "../../../types";
|
|
2
|
+
|
|
3
|
+
const title = "科学鸡蛋计时器";
|
|
4
|
+
const description = "根据海拔、温度和大小,通过热力学公式计算出最完美的鸡蛋煮制时间。";
|
|
5
|
+
const faq = [
|
|
6
|
+
{
|
|
7
|
+
question: "为什么煮鸡蛋时海拔很重要?",
|
|
8
|
+
answer: "水并不总是在 100°C 沸腾。在较高海拔地区,大气压较低,水会在较低温度下沸腾。例如,在海拔 2000 米处,水在约 93°C 时沸腾,这意味着相比海平面需要更长的煮制时间。在珠穆朗玛峰顶,几乎不可能煮熟一个全熟蛋。",
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
question: "从冰箱拿出来的蛋还是常温蛋?",
|
|
12
|
+
answer: "刚从冰箱(4°C)拿出来的蛋比常温(20°C)下的蛋需要更长的加热时间。两者的差异可能在 2-3 分钟左右。本计时器会根据初始温度自动调整时间。",
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
question: "蛋黄周围为什么会出现绿圈?",
|
|
16
|
+
answer: "那是硫化亚铁,是煮过头的产物。当温度超过 80°C 时间过长,蛋白中的硫会与蛋黄中的铁发生反应。它虽然无毒,但说明口感已经变差。煮完后立即浸入冰水可以防止其产生。",
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
question: "如何轻松剥下蛋壳?",
|
|
20
|
+
answer: "使用放置了 1-2 周的蛋(而非当天的新鲜蛋),开水下锅(不要冷水开始),并在煮完后立即浸入冰水。热冲击会使蛋白质收缩,从而使蛋壳更容易剥离。",
|
|
21
|
+
},
|
|
22
|
+
];
|
|
23
|
+
const howTo = [
|
|
24
|
+
{
|
|
25
|
+
name: "选择初始温度",
|
|
26
|
+
text: "选择鸡蛋是处于冰箱冷藏状态(4°C)还是常温状态(20°C)。这是指鸡蛋内部的温度。",
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
name: "选择鸡蛋大小",
|
|
30
|
+
text: "S、M、L 或 XL(73克以上)。体积大小决定了热量传递到中心点所需的时间。",
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
name: "指定您的海拔",
|
|
34
|
+
text: "手动输入或使用定位功能。海拔每升高 300 米,水的沸点约降低 1°C。",
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
name: "进行冷水冲击",
|
|
38
|
+
text: "当计时器响起时,立即将鸡蛋浸入冰水中。这可以停止余热烹饪并方便剥壳。热冲击对精准度至关重要。",
|
|
39
|
+
},
|
|
40
|
+
];
|
|
41
|
+
|
|
42
|
+
const faqSchema = {
|
|
43
|
+
'@context': 'https://schema.org',
|
|
44
|
+
'@type': 'FAQPage',
|
|
45
|
+
mainEntity: faq.map((item) => ({
|
|
46
|
+
'@type': 'Question',
|
|
47
|
+
name: item.question,
|
|
48
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
49
|
+
})),
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
const howToSchema = {
|
|
53
|
+
'@context': 'https://schema.org',
|
|
54
|
+
'@type': 'HowTo',
|
|
55
|
+
name: title,
|
|
56
|
+
description,
|
|
57
|
+
step: howTo.map((step) => ({
|
|
58
|
+
'@type': 'HowToStep',
|
|
59
|
+
name: step.name,
|
|
60
|
+
text: step.text,
|
|
61
|
+
})),
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
const appSchema = {
|
|
65
|
+
'@context': 'https://schema.org',
|
|
66
|
+
'@type': 'SoftwareApplication',
|
|
67
|
+
name: title,
|
|
68
|
+
description,
|
|
69
|
+
applicationCategory: 'UtilitiesApplication',
|
|
70
|
+
operatingSystem: 'Web',
|
|
71
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'CNY' },
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
export const content: ToolLocaleContent = {
|
|
75
|
+
slug: "boiled-eggs",
|
|
76
|
+
title: "科学鸡蛋计时器",
|
|
77
|
+
description: "根据海拔、温度和大小,通过热力学公式计算出最完美的鸡蛋煮制时间。",
|
|
78
|
+
faqTitle: "常见问题",
|
|
79
|
+
bibliographyTitle: "科学参考文献",
|
|
80
|
+
ui: {
|
|
81
|
+
parameters: "煮蛋参数",
|
|
82
|
+
initial_temperature: "初始温度",
|
|
83
|
+
fridge: "冰箱冷藏",
|
|
84
|
+
ambient: "室内常温",
|
|
85
|
+
egg_size: "鸡蛋大小",
|
|
86
|
+
altitude: "所在海拔",
|
|
87
|
+
use_location: "使用我的位置",
|
|
88
|
+
altitude_help: "在高海拔地区,水的沸点较低,这会影响烹饪时长。",
|
|
89
|
+
sea_level: "海平面",
|
|
90
|
+
soft_cooked: "溏心蛋(流心)",
|
|
91
|
+
soft_description: "蛋黄呈液态,蛋白洁白柔软。",
|
|
92
|
+
mollet: "糖心蛋(软糯)",
|
|
93
|
+
mollet_description: "蛋黄呈膏状,蛋白凝固。",
|
|
94
|
+
hard_cooked: "全熟蛋",
|
|
95
|
+
hard_description: "完全煮熟,蛋黄结实。",
|
|
96
|
+
},
|
|
97
|
+
faq,
|
|
98
|
+
bibliography: [
|
|
99
|
+
{
|
|
100
|
+
name: "The Science of Boiling an Egg - Charles D. H. Williams",
|
|
101
|
+
url: "https://newton.ex.ac.uk/teaching/CDHW/Egg/",
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
name: "The Food Lab: The Science of the Best Hard Boiled Eggs - J. Kenji López-Alt",
|
|
105
|
+
url: "https://www.seriouseats.com/the-food-lab-hard-boiled-eggs-recipe",
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
name: "The Food Lab: Perfect Soft Boiled Eggs",
|
|
109
|
+
url: "https://www.seriouseats.com/soft-boiled-eggs-recipe",
|
|
110
|
+
},
|
|
111
|
+
],
|
|
112
|
+
howTo,
|
|
113
|
+
seo: [
|
|
114
|
+
{
|
|
115
|
+
type: 'title',
|
|
116
|
+
text: '完美煮蛋大师指南',
|
|
117
|
+
level: 2,
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
type: 'paragraph',
|
|
121
|
+
html: '煮鸡蛋是一个<strong>应用热力学</strong>的过程。初始温度、鸡蛋大小和地理高度的精确性,决定了您得到的是丝滑的流心蛋黄,还是由于煮过头而带有绿圈的硬结蛋黄。',
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
type: 'stats',
|
|
125
|
+
columns: 4,
|
|
126
|
+
items: [
|
|
127
|
+
{
|
|
128
|
+
value: '62°C',
|
|
129
|
+
label: '蛋白凝固点',
|
|
130
|
+
icon: 'mdi:egg-outline',
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
value: '68°C',
|
|
134
|
+
label: '蛋黄凝固点',
|
|
135
|
+
icon: 'mdi:egg-fried',
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
value: '-1°C',
|
|
139
|
+
label: '沸点 / 300m',
|
|
140
|
+
icon: 'mdi:mountain',
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
value: '0s',
|
|
144
|
+
label: '容错误差',
|
|
145
|
+
icon: 'mdi:timer-check-outline',
|
|
146
|
+
},
|
|
147
|
+
],
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
type: 'title',
|
|
151
|
+
text: '不同熟度状态对比',
|
|
152
|
+
level: 3,
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
type: 'comparative',
|
|
156
|
+
columns: 3,
|
|
157
|
+
items: [
|
|
158
|
+
{
|
|
159
|
+
title: '溏心蛋 (Soft)',
|
|
160
|
+
icon: 'mdi:coffee-outline',
|
|
161
|
+
description: '蛋白部分凝固,蛋黄完全呈液态流出。',
|
|
162
|
+
points: [
|
|
163
|
+
'极度柔嫩的质地',
|
|
164
|
+
'最适合面包蘸食',
|
|
165
|
+
'煮制时间短 (3-4 分钟)',
|
|
166
|
+
'由于太嫩很难剥壳',
|
|
167
|
+
],
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
title: '糖心蛋 (Mollet)',
|
|
171
|
+
icon: 'mdi:water-percent',
|
|
172
|
+
description: '蛋白完全凝固,蛋黄呈奶油质感,浓稠不凝固。',
|
|
173
|
+
highlight: true,
|
|
174
|
+
points: [
|
|
175
|
+
'美食界的顶级标准',
|
|
176
|
+
'蛋黄质地如蜂蜜般顺滑',
|
|
177
|
+
'蛋白富有弹性',
|
|
178
|
+
'沙拉的完美搭档',
|
|
179
|
+
],
|
|
180
|
+
},
|
|
181
|
+
{
|
|
182
|
+
title: '全熟蛋 (Hard)',
|
|
183
|
+
icon: 'mdi:circle-slice-8',
|
|
184
|
+
description: '完全凝固但依然细嫩,无绿圈产生。',
|
|
185
|
+
points: [
|
|
186
|
+
'蛋黄不透明且结实',
|
|
187
|
+
'易于携带和剥壳',
|
|
188
|
+
'适合制作填馅蛋',
|
|
189
|
+
'必须在煮完后迅速冷却',
|
|
190
|
+
],
|
|
191
|
+
},
|
|
192
|
+
],
|
|
193
|
+
},
|
|
194
|
+
{
|
|
195
|
+
type: 'title',
|
|
196
|
+
text: '随海拔变化的煮沸点',
|
|
197
|
+
level: 3,
|
|
198
|
+
},
|
|
199
|
+
{
|
|
200
|
+
type: 'table',
|
|
201
|
+
headers: ['城市 / 高度', '海拔米数(m)', '沸点 (°C)', '需额外增加时间'],
|
|
202
|
+
rows: [
|
|
203
|
+
['海平面(如上海)', '0m', '100°C', '0s'],
|
|
204
|
+
['昆明', '1890m', '93.7°C', '+60s'],
|
|
205
|
+
['墨西哥城', '2240m', '92.6°C', '+75s'],
|
|
206
|
+
['拉巴斯(玻利维亚)', '3640m', '88.1°C', '+140s'],
|
|
207
|
+
],
|
|
208
|
+
},
|
|
209
|
+
{
|
|
210
|
+
type: 'diagnostic',
|
|
211
|
+
variant: 'warning',
|
|
212
|
+
title: '出现绿圈或难以剥壳?',
|
|
213
|
+
html: '绿圈是由于煮过头造成的<strong>硫化亚铁</strong>反应。如果蛋壳难剥,通常是因为鸡蛋太新鲜;较低的 pH 值使蛋白紧贴蛋皮。建议使用存放 1 周后的鸡蛋,并进行冰水冲击。',
|
|
214
|
+
},
|
|
215
|
+
{
|
|
216
|
+
type: 'title',
|
|
217
|
+
text: '鸡蛋科学小词典',
|
|
218
|
+
level: 3,
|
|
219
|
+
},
|
|
220
|
+
{
|
|
221
|
+
type: 'glossary',
|
|
222
|
+
items: [
|
|
223
|
+
{
|
|
224
|
+
term: '伴白蛋白',
|
|
225
|
+
definition: '蛋白中最先凝固的蛋白质 (62°C),形成最初的洁白结构。',
|
|
226
|
+
},
|
|
227
|
+
{
|
|
228
|
+
term: '卵白蛋白',
|
|
229
|
+
definition: '蛋白中的主要成分,需要更高热量 (80°C) 才能完全凝固。',
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
term: '大气压',
|
|
233
|
+
definition: '决定沸水温度的关键因素:气压越低温度越低。',
|
|
234
|
+
},
|
|
235
|
+
{
|
|
236
|
+
term: '热冲击',
|
|
237
|
+
definition: '立即浸入冰水中,以瞬间停止余热对鸡蛋的烹饪。',
|
|
238
|
+
},
|
|
239
|
+
],
|
|
240
|
+
},
|
|
241
|
+
{
|
|
242
|
+
type: 'tip',
|
|
243
|
+
title: '加醋的小窍门',
|
|
244
|
+
html: '在水中加入一勺醋。如果蛋壳不慎裂开,酸性会促使流出的蛋液迅速凝固,起到封堵裂缝的作用。',
|
|
245
|
+
},
|
|
246
|
+
{
|
|
247
|
+
type: 'paragraph',
|
|
248
|
+
html: '我们的计时器采用查尔斯·威廉姆斯(Charles Williams)方程,根据您的精确位置和鸡蛋初始状态进行秒级精准调整。',
|
|
249
|
+
},
|
|
250
|
+
],
|
|
251
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
252
|
+
};
|
|
@@ -14,6 +14,18 @@ export const eggTimer: CookingToolEntry = {
|
|
|
14
14
|
es: () => import("./i18n/es").then((m) => m.content),
|
|
15
15
|
en: () => import("./i18n/en").then((m) => m.content),
|
|
16
16
|
fr: () => import("./i18n/fr").then((m) => m.content),
|
|
17
|
+
de: () => import("./i18n/de").then((m) => m.content),
|
|
18
|
+
it: () => import("./i18n/it").then((m) => m.content),
|
|
19
|
+
pt: () => import("./i18n/pt").then((m) => m.content),
|
|
20
|
+
nl: () => import("./i18n/nl").then((m) => m.content),
|
|
21
|
+
sv: () => import("./i18n/sv").then((m) => m.content),
|
|
22
|
+
ru: () => import("./i18n/ru").then((m) => m.content),
|
|
23
|
+
tr: () => import("./i18n/tr").then((m) => m.content),
|
|
24
|
+
pl: () => import("./i18n/pl").then((m) => m.content),
|
|
25
|
+
id: () => import("./i18n/id").then((m) => m.content),
|
|
26
|
+
ja: () => import("./i18n/ja").then((m) => m.content),
|
|
27
|
+
zh: () => import("./i18n/zh").then((m) => m.content),
|
|
28
|
+
ko: () => import("./i18n/ko").then((m) => m.content),
|
|
17
29
|
},
|
|
18
30
|
};
|
|
19
31
|
|
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
2
|
+
|
|
3
|
+
const title = 'Zutaten Rechner & Rezept Anpassung';
|
|
4
|
+
const description = 'Skalieren Sie Rezepte automatisch basierend auf der Portionenanzahl. Berechnen Sie exakte Mengen durch Multiplizieren oder Reduzieren Ihres Rezepts.';
|
|
5
|
+
|
|
6
|
+
const faq = [
|
|
7
|
+
{
|
|
8
|
+
question: 'Warum enthält mein Umrechnungsfaktor Dezimalstellen?',
|
|
9
|
+
answer: 'Kulinarische Proportionen sind nicht immer rund. Wenn Sie ein Rezept von 4 auf 7 Personen skalieren, beträgt der Faktor genau 1,75. Die Zutaten werden mit dieser Zahl multipliziert, was zu Bruchteilen führen kann. Das ist genauer als willkürliches Runden.',
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
question: 'Was passiert, wenn ich "1/2 Teelöffel Salz" eingebe?',
|
|
13
|
+
answer: 'Der Parser sucht zuerst nach der Zahl. Er erkennt "1" als Menge und "/2" als Teil der Einheit. Das Ergebnis wird "0,5", was korrekt skaliert wird. Für Brüche wie "1/2" können Sie direkt "0,5" eingeben (klarer), oder das Tool interpretiert es als Division.',
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
question: 'Sollte ich die Endergebnisse runden?',
|
|
17
|
+
answer: 'Das hängt von der Zutat ab. Bei Mehl ja. Bei Hefe oder Gewürzen ist Präzision weniger kritisch (skalieren Sie auf 75% des angegebenen Wertes). Bei Eiern: Wenn Sie 2,3 erhalten, verwenden Sie 2 ganze Eier + einen Teil eines dritten (abgewogen) oder runden Sie auf 2, wenn das Gericht es zulässt.',
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
question: 'Warum ändert sich das Ergebnis nicht, wenn ich die Portionen ändere?',
|
|
21
|
+
answer: 'Stellen Sie sicher, dass das Zutatenfeld Inhalt hat. Wenn es leer ist, gibt es nichts zu skalieren. Überprüfen Sie auch, ob die Zahlen in Ihren Zutaten erkennbar sind (z.B. "500g", "1/2 Teelöffel").',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
question: 'Funktioniert das auch mit imperialen Maßen (Unzen, Tassen)?',
|
|
25
|
+
answer: 'Technisch gesehen ja, das Tool liest Zahlen und skaliert. Aber bei Tassen ist die Genauigkeit begrenzt (inkonsistentes Volumen). Es wird empfohlen, vor dem Skalieren in Gramm umzurechnen.',
|
|
26
|
+
},
|
|
27
|
+
];
|
|
28
|
+
|
|
29
|
+
const howTo = [
|
|
30
|
+
{
|
|
31
|
+
name: 'Portionen eingeben',
|
|
32
|
+
text: 'Geben Sie im Feld "Original" die Personenanzahl ein, für die das Rezept entworfen wurde. Unter "Gewünscht" die Anzahl, für die Sie kochen möchten.',
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
name: 'Zutatenliste einfügen',
|
|
36
|
+
text: 'Kopieren Sie Ihre Liste und fügen Sie sie unverändert ein. Jede Zutat in eine neue Zeile. Das Tool erkennt Zahlen am Anfang (500g, 1/2, 2.5) und skaliert automatisch.',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: 'Kontextuell anpassen',
|
|
40
|
+
text: 'Die Ergebnisse sind mathematisch exakt, aber Kochen ist Kunst. Gewürze: auf 75% skalieren. Hefe: bei großen Mengen weniger als theoretisch berechnet. Zeiten: werden nie skaliert.',
|
|
41
|
+
},
|
|
42
|
+
];
|
|
43
|
+
|
|
44
|
+
const faqSchema = {
|
|
45
|
+
'@context': 'https://schema.org',
|
|
46
|
+
'@type': 'FAQPage',
|
|
47
|
+
mainEntity: faq.map((item) => ({
|
|
48
|
+
'@type': 'Question',
|
|
49
|
+
name: item.question,
|
|
50
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
51
|
+
})),
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
const howToSchema = {
|
|
55
|
+
'@context': 'https://schema.org',
|
|
56
|
+
'@type': 'HowTo',
|
|
57
|
+
name: title,
|
|
58
|
+
description,
|
|
59
|
+
step: howTo.map((step) => ({
|
|
60
|
+
'@type': 'HowToStep',
|
|
61
|
+
name: step.name,
|
|
62
|
+
text: step.text,
|
|
63
|
+
})),
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
const appSchema = {
|
|
67
|
+
'@context': 'https://schema.org',
|
|
68
|
+
'@type': 'SoftwareApplication',
|
|
69
|
+
name: title,
|
|
70
|
+
description,
|
|
71
|
+
applicationCategory: 'UtilitiesApplication',
|
|
72
|
+
operatingSystem: 'All',
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
export const content: ToolLocaleContent = {
|
|
76
|
+
slug: 'zutaten-skalierung',
|
|
77
|
+
title,
|
|
78
|
+
description,
|
|
79
|
+
ui: {
|
|
80
|
+
servings: 'Portionen',
|
|
81
|
+
original: 'Original',
|
|
82
|
+
desired: 'Gewünscht',
|
|
83
|
+
multiplyingFactor: 'Multiplikationsfaktor',
|
|
84
|
+
ingredientsList: 'Zutatenliste',
|
|
85
|
+
pasteHere: 'Liste hier einfügen.',
|
|
86
|
+
exampleLine1: 'Bsp:',
|
|
87
|
+
exampleLine2: '500g Mehl',
|
|
88
|
+
exampleLine3: '300ml Wasser',
|
|
89
|
+
exampleLine4: '10g Salz',
|
|
90
|
+
result: 'Ergebnis',
|
|
91
|
+
copy: 'Kopieren',
|
|
92
|
+
copied: 'Kopiert!',
|
|
93
|
+
emptyState: 'Ihre angepassten Zutaten erscheinen hier...',
|
|
94
|
+
defaultIngredient1: '200g Mehl',
|
|
95
|
+
defaultIngredient2: '100ml Milch',
|
|
96
|
+
defaultIngredient3: '2 Eier',
|
|
97
|
+
},
|
|
98
|
+
faqTitle: 'Häufig gestellte Fragen',
|
|
99
|
+
faq,
|
|
100
|
+
bibliographyTitle: 'Bibliografie',
|
|
101
|
+
bibliography: [
|
|
102
|
+
{
|
|
103
|
+
name: 'Harold McGee - On Food and Cooking: The Science and Lore of the Kitchen',
|
|
104
|
+
url: 'https://en.wikipedia.org/wiki/Harold_McGee',
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
name: 'The Flavor Bible by Karen Page and Andrew Dornenburg',
|
|
108
|
+
url: 'https://www.flavorprints.com/',
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
name: 'Modernist Cuisine - Wissenschaftliche Skalierungstechniken',
|
|
112
|
+
url: 'https://www.modernistcuisine.com/',
|
|
113
|
+
},
|
|
114
|
+
],
|
|
115
|
+
howTo,
|
|
116
|
+
seo: [
|
|
117
|
+
{
|
|
118
|
+
type: 'title',
|
|
119
|
+
text: 'Meister Leitfaden zur Skalierung und Umrechnung von Rezepten',
|
|
120
|
+
level: 2,
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'paragraph',
|
|
124
|
+
html: 'Die <strong>Skalierung von Zutaten</strong> ist eine der kritischsten und fehleranfälligsten Aufgaben in der Profiküche. Es geht nicht nur darum, Zahlen zu multiplizieren, sondern zu verstehen, wie die Chemie und Physik der Lebensmittel auf Änderungen von Volumen und Oberfläche reagieren.',
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
type: 'stats',
|
|
128
|
+
columns: 4,
|
|
129
|
+
items: [
|
|
130
|
+
{
|
|
131
|
+
value: 'x1.75',
|
|
132
|
+
label: 'Faktor 4 auf 7 Pers.',
|
|
133
|
+
icon: 'mdi:calculator',
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
value: '75%',
|
|
137
|
+
label: 'Gewürzanpassung',
|
|
138
|
+
icon: 'mdi:shaker-outline',
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
value: '0%',
|
|
142
|
+
label: 'Zeitskalierung',
|
|
143
|
+
icon: 'mdi:timer-off',
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
value: '100g',
|
|
147
|
+
label: 'Referenzbasis',
|
|
148
|
+
icon: 'mdi:weight-gram',
|
|
149
|
+
},
|
|
150
|
+
],
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
type: 'title',
|
|
154
|
+
text: 'Unterschiede zwischen linearer und kontextueller Skalierung',
|
|
155
|
+
level: 3,
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
type: 'comparative',
|
|
159
|
+
columns: 2,
|
|
160
|
+
items: [
|
|
161
|
+
{
|
|
162
|
+
title: 'Mathematisch lineare Skalierung',
|
|
163
|
+
icon: 'mdi:math-log',
|
|
164
|
+
description: 'Direkte Multiplikation aller Werte mit dem ermittelten Umrechnungsfaktor.',
|
|
165
|
+
points: [
|
|
166
|
+
'Perfekt für Mehl und Basisflüssigkeiten',
|
|
167
|
+
'Ideal für Präzisions-Patisserie',
|
|
168
|
+
'Funktioniert gut bei kleinen Änderungen (x2, x0.5)',
|
|
169
|
+
'Einfach automatisch zu berechnen',
|
|
170
|
+
],
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
title: 'Kontextuelle Küchenskalierung',
|
|
174
|
+
icon: 'mdi:chef-hat',
|
|
175
|
+
description: 'Anpassung der Proportionen basierend auf Geschmacksintensität und Verdunstung.',
|
|
176
|
+
highlight: true,
|
|
177
|
+
points: [
|
|
178
|
+
'Vermeidet Überwürzung (Salz/Gewürze)',
|
|
179
|
+
'Berücksichtigt Verdunstungsoberflächen',
|
|
180
|
+
'Passt Hefe an Reibungswärme an',
|
|
181
|
+
'Erfordert Erfahrung und Urteilsvermögen',
|
|
182
|
+
],
|
|
183
|
+
},
|
|
184
|
+
],
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
type: 'title',
|
|
188
|
+
text: 'Umrechnungsfaktoren nach Gästeanzahl',
|
|
189
|
+
level: 3,
|
|
190
|
+
},
|
|
191
|
+
{
|
|
192
|
+
type: 'table',
|
|
193
|
+
headers: ['Von Portionen', 'Auf Portionen', 'Faktor (FC)', 'Schwierigkeitsgrad'],
|
|
194
|
+
rows: [
|
|
195
|
+
['2 Personen', '4 Personen', 'x 2.0', 'Niedrig (Linear)'],
|
|
196
|
+
['4 Personen', '6 Personen', 'x 1.5', 'Niedrig (Linear)'],
|
|
197
|
+
['4 Personen', '10 Personen', 'x 2.5', 'Mittel (Gewürze prüfen)'],
|
|
198
|
+
['4 Personen', '25 Personen', 'x 6.25', 'Hoch (Kontextuell)'],
|
|
199
|
+
],
|
|
200
|
+
},
|
|
201
|
+
{
|
|
202
|
+
type: 'diagnostic',
|
|
203
|
+
variant: 'warning',
|
|
204
|
+
title: 'Häufige Probleme beim Verdoppeln eines Rezepts',
|
|
205
|
+
html: 'Wenn Sie feststellen, dass der Geschmack nach dem Skalieren (besonders bei Schärfe oder Salz) zu intensiv ist, reduzieren Sie die Skalierung dieser spezifischen Zutaten auf 75%. Verdoppeln Sie niemals die Garzeit; die Kerntemperatur wird abhängig von der Dicke des Stücks erreicht, nicht nach Gesamtgewicht.',
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
type: 'title',
|
|
209
|
+
text: 'Glossar der Standardisierungsterminologie',
|
|
210
|
+
level: 3,
|
|
211
|
+
},
|
|
212
|
+
{
|
|
213
|
+
type: 'glossary',
|
|
214
|
+
items: [
|
|
215
|
+
{
|
|
216
|
+
term: 'Umrechnungsfaktor',
|
|
217
|
+
definition: 'Zahl, mit der alle Zutaten multipliziert werden: Gewünschte Menge / Original-Menge.',
|
|
218
|
+
},
|
|
219
|
+
{
|
|
220
|
+
term: 'Garschwund',
|
|
221
|
+
definition: 'Gewichtsverlust einer Zutat durch Verdunstung oder Fettverlust. Skaliert nicht linear.',
|
|
222
|
+
},
|
|
223
|
+
{
|
|
224
|
+
term: 'Bruttogewicht vs. Nettogewicht',
|
|
225
|
+
definition: 'Das Gewicht vor und nach dem Putzen der Zutat. Wir skalieren immer auf Basis des Originalrezepts.',
|
|
226
|
+
},
|
|
227
|
+
{
|
|
228
|
+
term: 'Ergiebigkeit',
|
|
229
|
+
definition: 'Gesamtmenge des Endprodukts nach Skalierung und Garprozess.',
|
|
230
|
+
},
|
|
231
|
+
],
|
|
232
|
+
},
|
|
233
|
+
{
|
|
234
|
+
type: 'tip',
|
|
235
|
+
title: 'Der Trick mit dem verschlagenen Ei',
|
|
236
|
+
html: 'Wenn der Rechner 2,3 Eier anzeigt, schlagen Sie ein ganzes Ei auf, wiegen es ab und verwenden nur die entsprechenden 30%. Dies ist der einzige Weg für Präzision in der feinen Patisserie.',
|
|
237
|
+
},
|
|
238
|
+
{
|
|
239
|
+
type: 'paragraph',
|
|
240
|
+
html: 'Unser Tool vereinfacht die Mathematik, damit Sie Ihre Energie dem widmen können, was wirklich zählt: Kreativität und Geschmack.',
|
|
241
|
+
},
|
|
242
|
+
],
|
|
243
|
+
schemas: [appSchema, faqSchema, howToSchema],
|
|
244
|
+
};
|