@jjlmoya/utils-cooking 1.12.0 → 1.14.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/slug_language_code_format.test.ts +23 -0
- package/src/tests/slug_uniqueness.test.ts +81 -0
- 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/fr.ts +1 -1
- 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 +3 -3
- 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/es.ts +95 -95
- 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/es.ts +228 -228
- package/src/tool/pizza/i18n/fr.ts +1 -1
- 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/es.ts +172 -172
- 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,244 @@
|
|
|
1
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
2
|
+
|
|
3
|
+
const title = '식재료 계량 계산기 레시피 분량 조절';
|
|
4
|
+
const description = '인분 수에 따라 레시피 분량을 자동으로 조절합니다. 복잡한 계산 없이 레시피를 곱하거나 나누어 정확한 재료 양을 확인하세요.';
|
|
5
|
+
|
|
6
|
+
const faq = [
|
|
7
|
+
{
|
|
8
|
+
question: '변환 계수에 왜 소수점이 포함되나요?',
|
|
9
|
+
answer: '요리 비율이 항상 딱 떨어지는 정수가 아니기 때문입니다. 4인분 레시피를 7인분으로 늘릴 경우 계수는 정확히 1.75가 됩니다. 분수가 나오더라도 이 숫자를 곱하는 것이 임의로 반올림하는 것보다 훨씬 정확합니다.',
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
question: '"소금 1/2 작은술"이라고 입력하면 어떻게 되나요?',
|
|
13
|
+
answer: '도구는 먼저 숫자를 찾습니다. "1"을 수량으로 인식하고 "/2"를 단위의 일부로 처리합니다. 결과는 "0.5"가 되며 정확하게 계산됩니다. "1/2"과 같은 분수는 직접 "0.5"로 입력하는 것이 더 명확하지만, 도구가 나눗셈으로 해석할 수도 있습니다.',
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
question: '최종 결과를 반올림해야 하나요?',
|
|
17
|
+
answer: '재료에 따라 다릅니다. 밀가루 종류는 괜찮습니다. 하지만 이스트나 향신료는 정밀함보다는 비율이 중요합니다(계산값의 75% 정도로 조절하는 것을 추천합니다). 계란의 경우: 2.3개가 나오면 2개는 통째로 쓰고, 나머지 0.3은 풀어놓은 계란의 무게를 재서 사용하거나 요리에 따라 2개로 맞추는 등의 판단이 필요합니다.',
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
question: '인분을 바꿔도 결과가 변하지 않아요.',
|
|
21
|
+
answer: '재료 목록란에 내용이 있는지 확인하세요. 비어 있으면 계산할 대상이 없습니다. 또한 재료 이름 앞에 숫자(예: "500g", "1/2 작은술")가 제대로 포함되어 있는지 확인하세요.',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
question: '야드-파운드법(온스, 컵)도 지원하나요?',
|
|
25
|
+
answer: '기술적으로는 가능합니다. 도구가 숫자를 읽어서 계산을 수행합니다. 하지만 컵(부피) 단위는 측정 방식에 따라 오차가 크므로, 정확한 계량을 위해서는 계산 전 그램(중량)으로 변환하는 것을 권장합니다.',
|
|
26
|
+
},
|
|
27
|
+
];
|
|
28
|
+
|
|
29
|
+
const howTo = [
|
|
30
|
+
{
|
|
31
|
+
name: '인분 수 입력',
|
|
32
|
+
text: '"원래 분량" 칸에 해당 레시피의 기준 인분을 입력합니다. "목표 분량" 칸에 실제 요리할 인분을 입력합니다.',
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
name: '재료 목록 붙여넣기',
|
|
36
|
+
text: '가지고 계신 목록을 그대로 복사해서 붙여넣으세요. 한 줄에 재료 하나씩 적습니다. 도구가 맨 앞의 숫자(500g, 1/2, 2.5)를 인식하여 자동으로 계산합니다.',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: '상황에 따른 미세 조절',
|
|
40
|
+
text: '결과는 수학적으로 정확하지만 요리는 예술입니다. 향신료는 계산값의 75%만 사용하거나, 대량 조리 시 이스트를 이론값보다 줄이는 등의 조절이 유효합니다. 참고로 조리 시간은 변하지 않습니다.',
|
|
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: 'recipe-ingredient-scaler-converter-servings',
|
|
77
|
+
title,
|
|
78
|
+
description,
|
|
79
|
+
ui: {
|
|
80
|
+
servings: '인분(분량)',
|
|
81
|
+
original: '원래 분량',
|
|
82
|
+
desired: '목표 분량',
|
|
83
|
+
multiplyingFactor: '변환 계수',
|
|
84
|
+
ingredientsList: '재료 목록',
|
|
85
|
+
pasteHere: '여기에 목록을 붙여넣으세요.',
|
|
86
|
+
exampleLine1: '예:',
|
|
87
|
+
exampleLine2: '500g 밀가루',
|
|
88
|
+
exampleLine3: '300ml 물',
|
|
89
|
+
exampleLine4: '10g 소금',
|
|
90
|
+
result: '계산 결과',
|
|
91
|
+
copy: '복사',
|
|
92
|
+
copied: '복사되었습니다!',
|
|
93
|
+
emptyState: '조절된 재료 분량이 여기에 표시됩니다...',
|
|
94
|
+
defaultIngredient1: '200g 밀가루',
|
|
95
|
+
defaultIngredient2: '100ml 우유',
|
|
96
|
+
defaultIngredient3: '계란 2개',
|
|
97
|
+
},
|
|
98
|
+
faqTitle: '자주 묻는 질문',
|
|
99
|
+
faq,
|
|
100
|
+
bibliographyTitle: '참고 문헌',
|
|
101
|
+
bibliography: [
|
|
102
|
+
{
|
|
103
|
+
name: 'Harold McGee - On Food and Cooking (음식과 요리)',
|
|
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 - 과학적 계량 기술',
|
|
112
|
+
url: 'https://www.modernistcuisine.com/',
|
|
113
|
+
},
|
|
114
|
+
],
|
|
115
|
+
howTo,
|
|
116
|
+
seo: [
|
|
117
|
+
{
|
|
118
|
+
type: 'title',
|
|
119
|
+
text: '레시피 인분 조절 및 변환 마스터 가이드',
|
|
120
|
+
level: 2,
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'paragraph',
|
|
124
|
+
html: '<strong>식재료 계량 조절</strong>은 전문 주방에서 가장 중요하면서도 실수가 잦은 작업 중 하나입니다. 단순히 숫자를 곱하는 것이 아니라, 식재료의 화학적·물리적 특성이 부피와 표면적의 변화에 어떻게 반응하는지 이해해야 합니다.',
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
type: 'stats',
|
|
128
|
+
columns: 4,
|
|
129
|
+
items: [
|
|
130
|
+
{
|
|
131
|
+
value: 'x1.75',
|
|
132
|
+
label: '4인→7인 계수',
|
|
133
|
+
icon: 'mdi:calculator',
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
value: '75%',
|
|
137
|
+
label: '향신료 비율 조절',
|
|
138
|
+
icon: 'mdi:shaker-outline',
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
value: '0%',
|
|
142
|
+
label: '시간은 변하지 않음',
|
|
143
|
+
icon: 'mdi:timer-off',
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
value: '100g',
|
|
147
|
+
label: '기준 환산 단위',
|
|
148
|
+
icon: 'mdi:weight-gram',
|
|
149
|
+
},
|
|
150
|
+
],
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
type: 'title',
|
|
154
|
+
text: '선형적 조절과 맥락적 조절의 차이',
|
|
155
|
+
level: 3,
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
type: 'comparative',
|
|
159
|
+
columns: 2,
|
|
160
|
+
items: [
|
|
161
|
+
{
|
|
162
|
+
title: '수학적 선형 조절',
|
|
163
|
+
icon: 'mdi:math-log',
|
|
164
|
+
description: '계산된 변환 계수를 모든 재료에 그대로 곱하는 방식.',
|
|
165
|
+
points: [
|
|
166
|
+
'밀가루나 베이스 액체류에 적합',
|
|
167
|
+
'정밀한 베이킹 작업에 이상적',
|
|
168
|
+
'소폭의 변화 (x2, x0.5) 시 효과적',
|
|
169
|
+
'자동 계산 및 적용이 매우 용이',
|
|
170
|
+
],
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
title: '요리에서의 맥락적 조절',
|
|
174
|
+
icon: 'mdi:chef-hat',
|
|
175
|
+
description: '풍미의 포화도와 증발률에 근거하여 비율을 미세 조정하는 방식.',
|
|
176
|
+
highlight: true,
|
|
177
|
+
points: [
|
|
178
|
+
'염분이나 향신료의 과잉을 방지',
|
|
179
|
+
'표면적에 따른 증발 차이를 고려',
|
|
180
|
+
'대용량 조리 시 이스트 양을 조절',
|
|
181
|
+
'셰프의 경험과 주관적 판단 필요',
|
|
182
|
+
],
|
|
183
|
+
},
|
|
184
|
+
],
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
type: 'title',
|
|
188
|
+
text: '인원수별 변환 계수 예시',
|
|
189
|
+
level: 3,
|
|
190
|
+
},
|
|
191
|
+
{
|
|
192
|
+
type: 'table',
|
|
193
|
+
headers: ['기존 인분', '목표 인분', '계수 (FC)', '조절 난이도'],
|
|
194
|
+
rows: [
|
|
195
|
+
['2인분', '4인분', 'x 2.0', '낮음 (선형적)'],
|
|
196
|
+
['4인분', '6인분', 'x 1.5', '낮음 (선형적)'],
|
|
197
|
+
['4인분', '10인분', 'x 2.5', '중간 (향신료 유의)'],
|
|
198
|
+
['4인분', '25인분', 'x 6.25', '높음 (맥락적 조절)'],
|
|
199
|
+
],
|
|
200
|
+
},
|
|
201
|
+
{
|
|
202
|
+
type: 'diagnostic',
|
|
203
|
+
variant: 'warning',
|
|
204
|
+
title: '레시피를 배수로 늘릴 때의 흔한 실수',
|
|
205
|
+
html: '양을 늘렸을 때 맛이 너무 강하게 느껴진다면(특히 매운맛이나 짠맛), 해당 재료들의 증량을 계산값의 75% 수준으로 맞추어보세요. 또한 조리 시간은 절대 배로 늘리지 마세요. 중심부 온도는 전체 중량이 아닌 식재료의 두께에 따라 결정되기 때문입니다.',
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
type: 'title',
|
|
209
|
+
text: '표준화 용어 사전',
|
|
210
|
+
level: 3,
|
|
211
|
+
},
|
|
212
|
+
{
|
|
213
|
+
type: 'glossary',
|
|
214
|
+
items: [
|
|
215
|
+
{
|
|
216
|
+
term: '변환 계수 (Conversion Factor)',
|
|
217
|
+
definition: '모든 재료에 곱해지는 숫자. 목표량 ÷ 원래량 으로 계산됩니다.',
|
|
218
|
+
},
|
|
219
|
+
{
|
|
220
|
+
term: '조리 손실 (Cooking Loss)',
|
|
221
|
+
definition: '증발이나 지방 유출로 인한 중량 감소. 선형적으로 변하지 않습니다.',
|
|
222
|
+
},
|
|
223
|
+
{
|
|
224
|
+
term: '조중량 vs 순중량',
|
|
225
|
+
definition: '손질 전과 후의 중량. 항상 원본 레시피의 중량을 기준으로 조절합니다.',
|
|
226
|
+
},
|
|
227
|
+
{
|
|
228
|
+
term: '수율 (Yield)',
|
|
229
|
+
definition: '계량 조절과 조리를 마친 후의 최종 완성품 총량.',
|
|
230
|
+
},
|
|
231
|
+
],
|
|
232
|
+
},
|
|
233
|
+
{
|
|
234
|
+
type: 'tip',
|
|
235
|
+
title: '풀어놓은 계란 활용 팁',
|
|
236
|
+
html: '계산상 계란이 2.3개 등이 나온다면, 1개를 완전히 풀어서 무게를 잰 뒤 그 중 30%만큼만 사용하세요. 정교한 제과 제빵에서 정밀함을 유지하는 유일한 방법입니다.',
|
|
237
|
+
},
|
|
238
|
+
{
|
|
239
|
+
type: 'paragraph',
|
|
240
|
+
html: '이 도구는 수학적 계산을 단순화하여 당신이 가장 중요한 "창의성과 맛"에 에너지를 집중할 수 있도록 돕습니다.',
|
|
241
|
+
},
|
|
242
|
+
],
|
|
243
|
+
schemas: [appSchema, faqSchema, howToSchema],
|
|
244
|
+
};
|
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
2
|
+
|
|
3
|
+
const title = 'Ingrediënten Reclalculator Recept Aanpassen';
|
|
4
|
+
const description = 'Schaal recepten automatisch op basis van het aantal porties. Bereken de exacte hoeveelheden ingrediënten door je recept te vermenigvuldigen of te verkleinen.';
|
|
5
|
+
|
|
6
|
+
const faq = [
|
|
7
|
+
{
|
|
8
|
+
question: 'Waarom bevat mijn conversiefactor decimalen?',
|
|
9
|
+
answer: 'Omdat culinaire verhoudingen niet altijd ronde getallen zijn. Als je een recept voor 4 personen opschaalt naar 7, is de factor precies 1,75. De ingrediënten worden met dat getal vermenigvuldigd, wat in breuken kan resulteren. Dit is nauwkeuriger dan willekeurig afronden.',
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
question: 'Wat gebeurt er als ik "1/2 theelepel zout" invoer?',
|
|
13
|
+
answer: 'De parser zoekt eerst naar het getal. Hij herkent "1" als hoeveelheid en "/2" als onderdeel van de eenheid. Het resultaat wordt "0,5" en wordt correct geschaald. Voor breuken zoals "1/2" kun je direct "0,5" invoeren (duidelijker), of het tool interpreteert het als een deling.',
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
question: 'Moet ik de eindresultaten afronden?',
|
|
17
|
+
answer: 'Dat hangt af van het ingrediënt. Voor bloem wel. Voor gist of kruiden is precisie minder cruciaal (schaal naar 75% van de aangegeven waarde). Voor eieren: als je 2,3 krijgt, gebruik dan 2 hele eieren + een deel van een derde (afgewogen), of rond af naar 2 als het gerecht dat toelaat.',
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
question: 'Waarom verandert het resultaat niet als ik de porties aanpas?',
|
|
21
|
+
answer: 'Zorg ervoor dat het ingrediëntenveld tekst bevat. Als het leeg is, valt er niets te schalen. Controleer ook of de getallen in je ingrediënten herkenbaar zijn (bijv. "500g", "1/2 theelepel").',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
question: 'Werkt het met imperiale maten (ounces, cups)?',
|
|
25
|
+
answer: 'Technisch gezien wel, het tool leest getallen en schaalt. Maar bij cups is de precisie beperkt (inconsistent volume). Het wordt aanbevolen om voor het schalen om te rekenen naar grammen.',
|
|
26
|
+
},
|
|
27
|
+
];
|
|
28
|
+
|
|
29
|
+
const howTo = [
|
|
30
|
+
{
|
|
31
|
+
name: 'Voer je porties in',
|
|
32
|
+
text: 'Vul bij "Origineel" het aantal personen in waarvoor het recept bedoeld is. Bij "Gewenst" vul je het aantal personen in waarvoor je gaat koken.',
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
name: 'Plak je ingrediëntenlijst',
|
|
36
|
+
text: 'Kopieer en plak je lijst zoals hij is. Elk ingrediënt op een nieuwe regel. Het tool herkent getallen aan het begin (500g, 1/2, 2.5) en schaalt automatisch.',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: 'Pas aan op basis van context',
|
|
40
|
+
text: 'De resultaten zijn wiskundig exact, maar koken is een kunst. Kruiden: schaal naar 75%. Gist: gebruik bij grote hoeveelheden minder dan het theoretische getal. Bereidingstijden worden nooit geschaald.',
|
|
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: 'ingredienten-herschalen',
|
|
77
|
+
title,
|
|
78
|
+
description,
|
|
79
|
+
ui: {
|
|
80
|
+
servings: 'Porties',
|
|
81
|
+
original: 'Origineel',
|
|
82
|
+
desired: 'Gewenst',
|
|
83
|
+
multiplyingFactor: 'Vermenigvuldigingsfactor',
|
|
84
|
+
ingredientsList: 'Ingrediëntenlijst',
|
|
85
|
+
pasteHere: 'Plak hier je lijst.',
|
|
86
|
+
exampleLine1: 'Bijv:',
|
|
87
|
+
exampleLine2: '500g Bloem',
|
|
88
|
+
exampleLine3: '300ml Water',
|
|
89
|
+
exampleLine4: '10g Zout',
|
|
90
|
+
result: 'Resultaat',
|
|
91
|
+
copy: 'Kopiëren',
|
|
92
|
+
copied: 'Gekopieerd!',
|
|
93
|
+
emptyState: 'Je aangepaste ingrediënten verschijnen hier...',
|
|
94
|
+
defaultIngredient1: '200g Bloem',
|
|
95
|
+
defaultIngredient2: '100ml Melk',
|
|
96
|
+
defaultIngredient3: '2 Eieren',
|
|
97
|
+
},
|
|
98
|
+
faqTitle: 'Veelgestelde Vragen',
|
|
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 - Wetenschappelijke schaaltechnieken',
|
|
112
|
+
url: 'https://www.modernistcuisine.com/',
|
|
113
|
+
},
|
|
114
|
+
],
|
|
115
|
+
howTo,
|
|
116
|
+
seo: [
|
|
117
|
+
{
|
|
118
|
+
type: 'title',
|
|
119
|
+
text: 'Meestergids voor het schalen en omzetten van recepten',
|
|
120
|
+
level: 2,
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'paragraph',
|
|
124
|
+
html: 'Het <strong>schalen van ingrediënten</strong> is een van de meest kritische en foutgevoelige taken in de professionele keuken. Het gaat niet alleen om het vermenigvuldigen van getallen, maar om het begrijpen hoe de chemie en fysica van voedsel reageren op veranderingen in volume en oppervlakte.',
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
type: 'stats',
|
|
128
|
+
columns: 4,
|
|
129
|
+
items: [
|
|
130
|
+
{
|
|
131
|
+
value: 'x1.75',
|
|
132
|
+
label: 'Factor 4 naar 7 pers.',
|
|
133
|
+
icon: 'mdi:calculator',
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
value: '75%',
|
|
137
|
+
label: 'Kruidenaanpassing',
|
|
138
|
+
icon: 'mdi:shaker-outline',
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
value: '0%',
|
|
142
|
+
label: 'Tijdaanpassing',
|
|
143
|
+
icon: 'mdi:timer-off',
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
value: '100g',
|
|
147
|
+
label: 'Referentiebasis',
|
|
148
|
+
icon: 'mdi:weight-gram',
|
|
149
|
+
},
|
|
150
|
+
],
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
type: 'title',
|
|
154
|
+
text: 'Verschillen tussen Lineair en Contextueel Schalen',
|
|
155
|
+
level: 3,
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
type: 'comparative',
|
|
159
|
+
columns: 2,
|
|
160
|
+
items: [
|
|
161
|
+
{
|
|
162
|
+
title: 'Wiskundig Lineair Schalen',
|
|
163
|
+
icon: 'mdi:math-log',
|
|
164
|
+
description: 'Directe vermenigvuldiging van alle waarden met de berekende conversiefactor.',
|
|
165
|
+
points: [
|
|
166
|
+
'Perfect voor bloem en basisvloeistoffen',
|
|
167
|
+
'Ideaal voor precisie-patisserie',
|
|
168
|
+
'Werkt goed bij kleine wijzigingen (x2, x0.5)',
|
|
169
|
+
'Eenvoudig automatisch te berekenen',
|
|
170
|
+
],
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
title: 'Contextueel Keukenschalen',
|
|
174
|
+
icon: 'mdi:chef-hat',
|
|
175
|
+
description: 'Aanpassing van verhoudingen op basis van smaakintensiteit en verdamping.',
|
|
176
|
+
highlight: true,
|
|
177
|
+
points: [
|
|
178
|
+
'Voorkomt te veel zout en kruiden',
|
|
179
|
+
'Houdt rekening met verdampingsoppervlak',
|
|
180
|
+
'Past gist aan op basis van massa',
|
|
181
|
+
'Vereist ervaring en beoordelingsvermogen',
|
|
182
|
+
],
|
|
183
|
+
},
|
|
184
|
+
],
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
type: 'title',
|
|
188
|
+
text: 'Conversiefactoren per aantal gasten',
|
|
189
|
+
level: 3,
|
|
190
|
+
},
|
|
191
|
+
{
|
|
192
|
+
type: 'table',
|
|
193
|
+
headers: ['Van Porties', 'Naar Porties', 'Factor (FC)', 'Moeilijkheidsgraad'],
|
|
194
|
+
rows: [
|
|
195
|
+
['2 personen', '4 personen', 'x 2.0', 'Laag (Lineair)'],
|
|
196
|
+
['4 personen', '6 personen', 'x 1.5', 'Laag (Lineair)'],
|
|
197
|
+
['4 personen', '10 personen', 'x 2.5', 'Gemiddeld (Let op kruiden)'],
|
|
198
|
+
['4 personen', '25 personen', 'x 6.25', 'Hoog (Contextueel)'],
|
|
199
|
+
],
|
|
200
|
+
},
|
|
201
|
+
{
|
|
202
|
+
type: 'diagnostic',
|
|
203
|
+
variant: 'warning',
|
|
204
|
+
title: 'Veelvoorkomende problemen bij het verdubbelen van een recept',
|
|
205
|
+
html: 'Als je merkt dat de smaak te intens is na het schalen (vooral bij zout of scherpe kruiden), verlaag dan de schaal van deze specifieke ingrediënten naar 75%. Verdubbel nooit de bereidingstijd; de kerntemperatuur wordt bereikt op basis van de dikte, niet het totaalgewicht.',
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
type: 'title',
|
|
209
|
+
text: 'Glossarium van Standaardisatieterminologie',
|
|
210
|
+
level: 3,
|
|
211
|
+
},
|
|
212
|
+
{
|
|
213
|
+
type: 'glossary',
|
|
214
|
+
items: [
|
|
215
|
+
{
|
|
216
|
+
term: 'Conversiefactor',
|
|
217
|
+
definition: 'Getal waarmee alle ingrediënten worden vermenigvuldigd: Gewenste hoeveelheid / Originele hoeveelheid.',
|
|
218
|
+
},
|
|
219
|
+
{
|
|
220
|
+
term: 'Kookverlies',
|
|
221
|
+
definition: 'Gewichtsverlies van een ingrediënt door verdamping of vetverlies.',
|
|
222
|
+
},
|
|
223
|
+
{
|
|
224
|
+
term: 'Bruto vs Netto gewicht',
|
|
225
|
+
definition: 'Het gewicht voor en na het schoonmaken van het ingrediënt.',
|
|
226
|
+
},
|
|
227
|
+
{
|
|
228
|
+
term: 'Rendement',
|
|
229
|
+
definition: 'Totale hoeveelheid eindproduct na het schalen en bereiden.',
|
|
230
|
+
},
|
|
231
|
+
],
|
|
232
|
+
},
|
|
233
|
+
{
|
|
234
|
+
type: 'tip',
|
|
235
|
+
title: 'De truc met het losgeklopte ei',
|
|
236
|
+
html: 'Als de calculator 2,3 eieren aangeeft, klop dan een heel ei los, weeg het en gebruik alleen het overeenkomstige gewicht (30%). Dit is de enige manier voor precisie in de patisserie.',
|
|
237
|
+
},
|
|
238
|
+
{
|
|
239
|
+
type: 'paragraph',
|
|
240
|
+
html: 'Ons tool vereenvoudigt de wiskunde, zodat je je energie kunt richten op wat echt telt: creativiteit en smaak.',
|
|
241
|
+
},
|
|
242
|
+
],
|
|
243
|
+
schemas: [appSchema, faqSchema, howToSchema],
|
|
244
|
+
};
|