@jjlmoya/utils-diy 1.28.0 → 1.30.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 -2
- package/src/category/i18n/de.ts +12 -12
- package/src/category/i18n/en.ts +110 -110
- package/src/category/i18n/es.ts +110 -110
- package/src/category/i18n/fr.ts +101 -101
- package/src/category/i18n/id.ts +12 -12
- package/src/category/i18n/it.ts +12 -12
- package/src/category/i18n/ja.ts +12 -12
- package/src/category/i18n/ko.ts +12 -12
- package/src/category/i18n/nl.ts +12 -12
- package/src/category/i18n/pl.ts +12 -12
- package/src/category/i18n/pt.ts +12 -12
- package/src/category/i18n/ru.ts +12 -12
- package/src/category/i18n/sv.ts +12 -12
- package/src/category/i18n/tr.ts +12 -12
- package/src/category/i18n/zh.ts +12 -12
- package/src/category/index.ts +36 -36
- package/src/category/seo.astro +1 -1
- package/src/components/PreviewNavSidebar.astro +1 -1
- package/src/components/PreviewToolbar.astro +1 -1
- package/src/data.ts +1 -1
- package/src/entries.ts +37 -37
- package/src/env.d.ts +1 -1
- package/src/index.ts +50 -50
- package/src/layouts/PreviewLayout.astro +1 -1
- package/src/pages/index.astro +1 -1
- package/src/tests/category_seo_quality.test.ts +74 -0
- package/src/tests/faq_count.test.ts +1 -1
- package/src/tests/mocks/astro_mock.js +1 -1
- package/src/tests/no_h1_in_components.test.ts +1 -1
- package/src/tests/seo_length.test.ts +1 -1
- package/src/tests/seo_parity.test.ts +2 -2
- package/src/tests/seo_translation_completeness.test.ts +18 -12
- package/src/tests/tool_validation.test.ts +15 -15
- package/src/tool/balusterCalculator/bibliography.ts +16 -16
- package/src/tool/balusterCalculator/i18n/de.ts +251 -251
- package/src/tool/balusterCalculator/i18n/en.ts +251 -251
- package/src/tool/balusterCalculator/i18n/es.ts +251 -251
- package/src/tool/balusterCalculator/i18n/fr.ts +251 -251
- package/src/tool/balusterCalculator/i18n/id.ts +251 -251
- package/src/tool/balusterCalculator/i18n/it.ts +251 -251
- package/src/tool/balusterCalculator/i18n/ja.ts +251 -251
- package/src/tool/balusterCalculator/i18n/ko.ts +251 -251
- package/src/tool/balusterCalculator/i18n/nl.ts +251 -251
- package/src/tool/balusterCalculator/i18n/pl.ts +251 -251
- package/src/tool/balusterCalculator/i18n/pt.ts +251 -251
- package/src/tool/balusterCalculator/i18n/ru.ts +251 -251
- package/src/tool/balusterCalculator/i18n/sv.ts +251 -251
- package/src/tool/balusterCalculator/i18n/tr.ts +251 -251
- package/src/tool/balusterCalculator/i18n/zh.ts +251 -251
- package/src/tool/balusterCalculator/seo.astro +15 -15
- package/src/tool/clayCalculator/bibliography.ts +12 -12
- package/src/tool/clayCalculator/i18n/de.ts +174 -174
- package/src/tool/clayCalculator/i18n/en.ts +174 -174
- package/src/tool/clayCalculator/i18n/es.ts +174 -174
- package/src/tool/clayCalculator/i18n/fr.ts +174 -174
- package/src/tool/clayCalculator/i18n/id.ts +174 -174
- package/src/tool/clayCalculator/i18n/it.ts +174 -174
- package/src/tool/clayCalculator/i18n/ja.ts +173 -173
- package/src/tool/clayCalculator/i18n/ko.ts +174 -174
- package/src/tool/clayCalculator/i18n/nl.ts +174 -174
- package/src/tool/clayCalculator/i18n/pl.ts +174 -174
- package/src/tool/clayCalculator/i18n/pt.ts +174 -174
- package/src/tool/clayCalculator/i18n/ru.ts +174 -174
- package/src/tool/clayCalculator/i18n/sv.ts +174 -174
- package/src/tool/clayCalculator/i18n/tr.ts +174 -174
- package/src/tool/clayCalculator/i18n/zh.ts +174 -174
- package/src/tool/clayCalculator/seo.astro +15 -15
- package/src/tool/concreteCalculator/bibliography.ts +7 -7
- package/src/tool/concreteCalculator/i18n/de.ts +188 -188
- package/src/tool/concreteCalculator/i18n/en.ts +188 -188
- package/src/tool/concreteCalculator/i18n/es.ts +188 -188
- package/src/tool/concreteCalculator/i18n/fr.ts +188 -188
- package/src/tool/concreteCalculator/i18n/id.ts +188 -188
- package/src/tool/concreteCalculator/i18n/it.ts +188 -188
- package/src/tool/concreteCalculator/i18n/ja.ts +188 -188
- package/src/tool/concreteCalculator/i18n/ko.ts +188 -188
- package/src/tool/concreteCalculator/i18n/nl.ts +188 -188
- package/src/tool/concreteCalculator/i18n/pl.ts +188 -188
- package/src/tool/concreteCalculator/i18n/pt.ts +188 -188
- package/src/tool/concreteCalculator/i18n/ru.ts +188 -188
- package/src/tool/concreteCalculator/i18n/sv.ts +188 -188
- package/src/tool/concreteCalculator/i18n/tr.ts +188 -188
- package/src/tool/concreteCalculator/i18n/zh.ts +188 -188
- package/src/tool/concreteCalculator/seo.astro +15 -15
- package/src/tool/cutOptimizer/bibliography.ts +12 -12
- package/src/tool/cutOptimizer/i18n/de.ts +169 -169
- package/src/tool/cutOptimizer/i18n/en.ts +169 -169
- package/src/tool/cutOptimizer/i18n/es.ts +169 -169
- package/src/tool/cutOptimizer/i18n/fr.ts +169 -169
- package/src/tool/cutOptimizer/i18n/id.ts +169 -169
- package/src/tool/cutOptimizer/i18n/it.ts +169 -169
- package/src/tool/cutOptimizer/i18n/ja.ts +169 -169
- package/src/tool/cutOptimizer/i18n/ko.ts +169 -169
- package/src/tool/cutOptimizer/i18n/nl.ts +169 -169
- package/src/tool/cutOptimizer/i18n/pl.ts +169 -169
- package/src/tool/cutOptimizer/i18n/pt.ts +169 -169
- package/src/tool/cutOptimizer/i18n/ru.ts +169 -169
- package/src/tool/cutOptimizer/i18n/sv.ts +169 -169
- package/src/tool/cutOptimizer/i18n/tr.ts +169 -169
- package/src/tool/cutOptimizer/i18n/zh.ts +169 -169
- package/src/tool/cutOptimizer/seo.astro +15 -15
- package/src/tool/drillCalculator/bibliography.ts +12 -12
- package/src/tool/drillCalculator/i18n/de.ts +134 -134
- package/src/tool/drillCalculator/i18n/en.ts +134 -134
- package/src/tool/drillCalculator/i18n/es.ts +134 -134
- package/src/tool/drillCalculator/i18n/fr.ts +134 -134
- package/src/tool/drillCalculator/i18n/id.ts +134 -134
- package/src/tool/drillCalculator/i18n/it.ts +134 -134
- package/src/tool/drillCalculator/i18n/ja.ts +134 -134
- package/src/tool/drillCalculator/i18n/ko.ts +134 -134
- package/src/tool/drillCalculator/i18n/nl.ts +134 -134
- package/src/tool/drillCalculator/i18n/pl.ts +134 -134
- package/src/tool/drillCalculator/i18n/pt.ts +134 -134
- package/src/tool/drillCalculator/i18n/ru.ts +134 -134
- package/src/tool/drillCalculator/i18n/sv.ts +134 -134
- package/src/tool/drillCalculator/i18n/tr.ts +134 -134
- package/src/tool/drillCalculator/i18n/zh.ts +134 -134
- package/src/tool/drillCalculator/seo.astro +15 -15
- package/src/tool/drillSharpener/bibliography.ts +16 -16
- package/src/tool/drillSharpener/i18n/de.ts +117 -117
- package/src/tool/drillSharpener/i18n/en.ts +117 -117
- package/src/tool/drillSharpener/i18n/es.ts +117 -117
- package/src/tool/drillSharpener/i18n/fr.ts +117 -117
- package/src/tool/drillSharpener/i18n/id.ts +117 -117
- package/src/tool/drillSharpener/i18n/it.ts +117 -117
- package/src/tool/drillSharpener/i18n/ja.ts +117 -117
- package/src/tool/drillSharpener/i18n/ko.ts +117 -117
- package/src/tool/drillSharpener/i18n/nl.ts +117 -117
- package/src/tool/drillSharpener/i18n/pl.ts +117 -117
- package/src/tool/drillSharpener/i18n/pt.ts +117 -117
- package/src/tool/drillSharpener/i18n/ru.ts +117 -117
- package/src/tool/drillSharpener/i18n/sv.ts +117 -117
- package/src/tool/drillSharpener/i18n/tr.ts +117 -117
- package/src/tool/drillSharpener/i18n/zh.ts +117 -117
- package/src/tool/drillSharpener/seo.astro +15 -15
- package/src/tool/epoxyCalculator/bibliography.ts +20 -20
- package/src/tool/epoxyCalculator/i18n/de.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/en.ts +178 -178
- package/src/tool/epoxyCalculator/i18n/es.ts +178 -178
- package/src/tool/epoxyCalculator/i18n/fr.ts +178 -178
- package/src/tool/epoxyCalculator/i18n/id.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/it.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/ja.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/ko.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/nl.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/pl.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/pt.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/ru.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/sv.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/tr.ts +116 -116
- package/src/tool/epoxyCalculator/i18n/zh.ts +116 -116
- package/src/tool/epoxyCalculator/seo.astro +15 -15
- package/src/tool/furnitureFit/bibliography.ts +12 -12
- package/src/tool/furnitureFit/i18n/de.ts +111 -111
- package/src/tool/furnitureFit/i18n/en.ts +149 -149
- package/src/tool/furnitureFit/i18n/es.ts +149 -149
- package/src/tool/furnitureFit/i18n/fr.ts +149 -149
- package/src/tool/furnitureFit/i18n/id.ts +111 -111
- package/src/tool/furnitureFit/i18n/it.ts +111 -111
- package/src/tool/furnitureFit/i18n/ja.ts +111 -111
- package/src/tool/furnitureFit/i18n/ko.ts +111 -111
- package/src/tool/furnitureFit/i18n/nl.ts +111 -111
- package/src/tool/furnitureFit/i18n/pl.ts +111 -111
- package/src/tool/furnitureFit/i18n/pt.ts +111 -111
- package/src/tool/furnitureFit/i18n/ru.ts +111 -111
- package/src/tool/furnitureFit/i18n/sv.ts +111 -111
- package/src/tool/furnitureFit/i18n/tr.ts +111 -111
- package/src/tool/furnitureFit/i18n/zh.ts +111 -111
- package/src/tool/furnitureFit/seo.astro +15 -15
- package/src/tool/mortarCalculator/bibliography.ts +20 -20
- package/src/tool/mortarCalculator/i18n/de.ts +130 -130
- package/src/tool/mortarCalculator/i18n/en.ts +202 -202
- package/src/tool/mortarCalculator/i18n/es.ts +179 -179
- package/src/tool/mortarCalculator/i18n/fr.ts +203 -203
- package/src/tool/mortarCalculator/i18n/id.ts +130 -130
- package/src/tool/mortarCalculator/i18n/it.ts +130 -130
- package/src/tool/mortarCalculator/i18n/ja.ts +130 -130
- package/src/tool/mortarCalculator/i18n/ko.ts +130 -130
- package/src/tool/mortarCalculator/i18n/nl.ts +130 -130
- package/src/tool/mortarCalculator/i18n/pl.ts +130 -130
- package/src/tool/mortarCalculator/i18n/pt.ts +130 -130
- package/src/tool/mortarCalculator/i18n/ru.ts +130 -130
- package/src/tool/mortarCalculator/i18n/sv.ts +130 -130
- package/src/tool/mortarCalculator/i18n/tr.ts +130 -130
- package/src/tool/mortarCalculator/i18n/zh.ts +130 -130
- package/src/tool/mortarCalculator/seo.astro +15 -15
- package/src/tool/passepartoutCalculator/bibliography.ts +16 -16
- package/src/tool/passepartoutCalculator/i18n/de.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/en.ts +165 -165
- package/src/tool/passepartoutCalculator/i18n/es.ts +165 -165
- package/src/tool/passepartoutCalculator/i18n/fr.ts +165 -165
- package/src/tool/passepartoutCalculator/i18n/id.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/it.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/ja.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/ko.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/nl.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/pl.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/pt.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/ru.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/sv.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/tr.ts +108 -108
- package/src/tool/passepartoutCalculator/i18n/zh.ts +108 -108
- package/src/tool/passepartoutCalculator/seo.astro +15 -15
- package/src/tool/pythagoreanRightAngleCalculator/bibliography.ts +12 -12
- package/src/tool/pythagoreanRightAngleCalculator/i18n/de.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/en.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/es.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/fr.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/id.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/it.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/ja.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/ko.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/nl.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/pl.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/pt.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/ru.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/sv.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/tr.ts +129 -129
- package/src/tool/pythagoreanRightAngleCalculator/i18n/zh.ts +129 -129
- package/src/tool/stairCalculator/bibliography.ts +16 -16
- package/src/tool/stairCalculator/i18n/de.ts +143 -143
- package/src/tool/stairCalculator/i18n/en.ts +145 -145
- package/src/tool/stairCalculator/i18n/es.ts +145 -145
- package/src/tool/stairCalculator/i18n/fr.ts +145 -145
- package/src/tool/stairCalculator/i18n/id.ts +143 -143
- package/src/tool/stairCalculator/i18n/it.ts +143 -143
- package/src/tool/stairCalculator/i18n/ja.ts +143 -143
- package/src/tool/stairCalculator/i18n/ko.ts +143 -143
- package/src/tool/stairCalculator/i18n/nl.ts +143 -143
- package/src/tool/stairCalculator/i18n/pl.ts +143 -143
- package/src/tool/stairCalculator/i18n/pt.ts +143 -143
- package/src/tool/stairCalculator/i18n/ru.ts +143 -143
- package/src/tool/stairCalculator/i18n/sv.ts +143 -143
- package/src/tool/stairCalculator/i18n/tr.ts +143 -143
- package/src/tool/stairCalculator/i18n/zh.ts +143 -143
- package/src/tool/stairCalculator/seo.astro +15 -15
- package/src/tool/thermalExpansionCalculator/bibliography.ts +16 -16
- package/src/tool/thermalExpansionCalculator/i18n/de.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/en.ts +170 -170
- package/src/tool/thermalExpansionCalculator/i18n/es.ts +170 -170
- package/src/tool/thermalExpansionCalculator/i18n/fr.ts +170 -170
- package/src/tool/thermalExpansionCalculator/i18n/id.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/it.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/ja.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/ko.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/nl.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/pl.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/pt.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/ru.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/sv.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/tr.ts +132 -132
- package/src/tool/thermalExpansionCalculator/i18n/zh.ts +132 -132
- package/src/tool/thermalExpansionCalculator/seo.astro +15 -15
- package/src/tool/twoStrokeMixtureCalculator/bibliography.ts +12 -12
- package/src/tool/twoStrokeMixtureCalculator/i18n/de.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/en.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/es.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/fr.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/id.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/it.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/ja.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/ko.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/nl.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/pl.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/pt.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/ru.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/sv.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/tr.ts +194 -194
- package/src/tool/twoStrokeMixtureCalculator/i18n/zh.ts +194 -194
- package/src/tool/voltageDropCalculator/bibliography.ts +16 -16
- package/src/tool/voltageDropCalculator/i18n/de.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/en.ts +151 -151
- package/src/tool/voltageDropCalculator/i18n/es.ts +151 -151
- package/src/tool/voltageDropCalculator/i18n/fr.ts +145 -145
- package/src/tool/voltageDropCalculator/i18n/id.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/it.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/ja.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/ko.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/nl.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/pl.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/pt.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/ru.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/sv.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/tr.ts +113 -113
- package/src/tool/voltageDropCalculator/i18n/zh.ts +113 -113
- package/src/tool/voltageDropCalculator/seo.astro +15 -15
- package/src/tool/workshopFractionConverter/bibliography.ts +12 -12
- package/src/tool/workshopFractionConverter/i18n/de.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/en.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/es.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/fr.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/id.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/it.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/ja.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/ko.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/nl.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/pl.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/pt.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/ru.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/sv.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/tr.ts +147 -147
- package/src/tool/workshopFractionConverter/i18n/zh.ts +147 -147
- package/src/tools.ts +20 -20
|
@@ -1,174 +1,174 @@
|
|
|
1
|
-
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
|
-
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
-
import type { ClayCalculatorUI } from '../ui';
|
|
4
|
-
import { bibliography } from '../bibliography';
|
|
5
|
-
|
|
6
|
-
const slug = 'clay-shrinkage-calculator';
|
|
7
|
-
const title = 'Clay Shrinkage Calculator: Exact Dimensions for Ceramics';
|
|
8
|
-
const description =
|
|
9
|
-
'Calculate clay shrinkage during drying and firing. Design ceramic pieces with the exact final dimensions you need.';
|
|
10
|
-
|
|
11
|
-
const faqData = [
|
|
12
|
-
{
|
|
13
|
-
question: 'Why does clay shrink?',
|
|
14
|
-
answer:
|
|
15
|
-
'Clay shrinks primarily due to water loss. First comes drying (evaporation of water between particles) and then firing (removal of chemically combined water and particle sintering).',
|
|
16
|
-
},
|
|
17
|
-
{
|
|
18
|
-
question: 'What is the normal shrinkage percentage?',
|
|
19
|
-
answer:
|
|
20
|
-
'It depends on the clay body. Earthenware typically shrinks 5-10%, while stoneware and porcelain can reach 12-15% due to greater vitrification.',
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
question: 'How do I measure the shrinkage of my own clay?',
|
|
24
|
-
answer:
|
|
25
|
-
'Create a test tile exactly 10cm long. Let it dry and measure it (drying shrinkage). Fire it to the final temperature and measure again (total shrinkage). The difference gives you the exact percentage.',
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
question: 'What happens if my piece cracks while drying?',
|
|
29
|
-
answer:
|
|
30
|
-
'This usually indicates drying too fast or unevenly. Thin areas lose water before thick ones, creating tension. Cover pieces with plastic to slow the process.',
|
|
31
|
-
},
|
|
32
|
-
];
|
|
33
|
-
|
|
34
|
-
const howToData = [
|
|
35
|
-
{
|
|
36
|
-
name: 'Measure the piece when wet',
|
|
37
|
-
text: 'Take the exact dimensions of your piece right after throwing or hand-building, while it still retains all its moisture.',
|
|
38
|
-
},
|
|
39
|
-
{
|
|
40
|
-
name: 'Enter the shrinkage coefficient',
|
|
41
|
-
text: 'Check your clay packaging for the total shrinkage percentage (drying + firing) provided by the manufacturer.',
|
|
42
|
-
},
|
|
43
|
-
{
|
|
44
|
-
name: 'Get the expected final dimensions',
|
|
45
|
-
text: 'Use the calculator to know how much your piece will measure after firing and plan your fits or lids accordingly.',
|
|
46
|
-
},
|
|
47
|
-
{
|
|
48
|
-
name: 'Reverse calculation for targets',
|
|
49
|
-
text: 'If you need your piece to measure exactly X cm when finished, use the reverse calculation to find what size it should be on the wheel.',
|
|
50
|
-
},
|
|
51
|
-
];
|
|
52
|
-
|
|
53
|
-
const faqSchema: WithContext<FAQPage> = {
|
|
54
|
-
'@context': 'https://schema.org',
|
|
55
|
-
'@type': 'FAQPage',
|
|
56
|
-
mainEntity: faqData.map((item) => ({
|
|
57
|
-
'@type': 'Question',
|
|
58
|
-
name: item.question,
|
|
59
|
-
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
60
|
-
})),
|
|
61
|
-
};
|
|
62
|
-
|
|
63
|
-
const howToSchema: WithContext<HowToThing> = {
|
|
64
|
-
'@context': 'https://schema.org',
|
|
65
|
-
'@type': 'HowTo',
|
|
66
|
-
name: title,
|
|
67
|
-
description,
|
|
68
|
-
step: howToData.map((step, i) => ({
|
|
69
|
-
'@type': 'HowToStep',
|
|
70
|
-
position: i + 1,
|
|
71
|
-
name: step.name,
|
|
72
|
-
text: step.text,
|
|
73
|
-
})),
|
|
74
|
-
};
|
|
75
|
-
|
|
76
|
-
const appSchema: WithContext<SoftwareApplication> = {
|
|
77
|
-
'@context': 'https://schema.org',
|
|
78
|
-
'@type': 'SoftwareApplication',
|
|
79
|
-
name: title,
|
|
80
|
-
description,
|
|
81
|
-
applicationCategory: 'UtilityApplication',
|
|
82
|
-
operatingSystem: 'All',
|
|
83
|
-
offers: { '@type': 'Offer', price: '0', priceCurrency: 'USD' },
|
|
84
|
-
inLanguage: 'en',
|
|
85
|
-
};
|
|
86
|
-
|
|
87
|
-
export const content: ToolLocaleContent<ClayCalculatorUI> = {
|
|
88
|
-
slug,
|
|
89
|
-
title,
|
|
90
|
-
description,
|
|
91
|
-
faqTitle: 'Frequently Asked Questions',
|
|
92
|
-
faq: faqData,
|
|
93
|
-
bibliography,
|
|
94
|
-
howTo: howToData,
|
|
95
|
-
schemas: [faqSchema, howToSchema, appSchema],
|
|
96
|
-
seo: [
|
|
97
|
-
{
|
|
98
|
-
type: 'title',
|
|
99
|
-
text: 'The Physics of Clay: Shrinkage and Expansion',
|
|
100
|
-
level: 2,
|
|
101
|
-
},
|
|
102
|
-
{
|
|
103
|
-
type: 'paragraph',
|
|
104
|
-
html: 'Clay is a living material that changes size throughout the ceramic process. From the moment you shape a wet piece to when it comes out of the kiln, it can lose between 8% and 15% of its original size. Calculating this shrinkage is essential for creating pieces with the exact dimensions you need.',
|
|
105
|
-
},
|
|
106
|
-
{
|
|
107
|
-
type: 'grid',
|
|
108
|
-
columns: [
|
|
109
|
-
{
|
|
110
|
-
type: 'card',
|
|
111
|
-
title: 'Shrinkage Phases',
|
|
112
|
-
html: '<p><strong>1. Drying (Wet → Dry):</strong> As water is lost, clay particles draw together. This is the largest shrinkage phase (4-8%). Thick pieces can crack if they dry too quickly.</p><p><strong>2. Firing (Dry → Bisque):</strong> Between 900-1000°C, clay undergoes irreversible chemical changes. Additional shrinkage of 2-4%. The piece becomes porous but strong.</p><p><strong>3. Vitrification (High Temperature):</strong> At 1200-1300°C, the clay vitrifies. Final shrinkage of 1-3%. Stoneware and porcelain reach maximum density.</p>',
|
|
113
|
-
},
|
|
114
|
-
{
|
|
115
|
-
type: 'card',
|
|
116
|
-
title: 'Influencing Variables',
|
|
117
|
-
html: '<ul><li><strong>Clay type:</strong> Red clays shrink less (8-10%) than porcelains (12-15%).</li><li><strong>Wall thickness:</strong> Thin walls shrink more uniformly than thick ones.</li><li><strong>Firing temperature:</strong> Higher temperatures mean greater shrinkage and vitrification.</li><li><strong>Grog content:</strong> Adding grog (pre-fired ground clay) reduces shrinkage.</li></ul>',
|
|
118
|
-
},
|
|
119
|
-
],
|
|
120
|
-
},
|
|
121
|
-
{
|
|
122
|
-
type: 'title',
|
|
123
|
-
text: 'Practical Applications',
|
|
124
|
-
level: 2,
|
|
125
|
-
},
|
|
126
|
-
{
|
|
127
|
-
type: 'title',
|
|
128
|
-
text: 'Mold Design',
|
|
129
|
-
level: 3,
|
|
130
|
-
},
|
|
131
|
-
{
|
|
132
|
-
type: 'paragraph',
|
|
133
|
-
html: 'If you need a mug with an 8cm final diameter, and your clay shrinks 12%, you must make the mold <strong>9.1cm</strong>. This reverse calculation is critical in production runs.',
|
|
134
|
-
},
|
|
135
|
-
{
|
|
136
|
-
type: 'title',
|
|
137
|
-
text: 'Lids and Assemblies',
|
|
138
|
-
level: 3,
|
|
139
|
-
},
|
|
140
|
-
{
|
|
141
|
-
type: 'paragraph',
|
|
142
|
-
html: 'When creating pieces that must fit together (teapot + lid, jar + lid), both must be made with the same clay and fired together to ensure equal shrinkage. A 1% difference can ruin the fit.',
|
|
143
|
-
},
|
|
144
|
-
{
|
|
145
|
-
type: 'title',
|
|
146
|
-
text: 'Monumental Sculpture',
|
|
147
|
-
level: 3,
|
|
148
|
-
},
|
|
149
|
-
{
|
|
150
|
-
type: 'paragraph',
|
|
151
|
-
html: 'In large pieces, differential shrinkage between thick and thin sections can cause cracks. Experienced potters compensate by leaving thicker walls in areas they know will shrink more.',
|
|
152
|
-
},
|
|
153
|
-
],
|
|
154
|
-
ui: {
|
|
155
|
-
labelInitialSize: 'Initial Size (mm)',
|
|
156
|
-
labelShrinkage: 'Shrinkage Percentage (%)',
|
|
157
|
-
labelLow: 'Low (Earthenware)',
|
|
158
|
-
labelMedium: 'Medium (Stoneware)',
|
|
159
|
-
labelHigh: 'High (Porcelain)',
|
|
160
|
-
presetTerracota: 'Earthenware (8%)',
|
|
161
|
-
presetGres: 'Stoneware (12%)',
|
|
162
|
-
presetPorcelana: 'Porcelain (15%)',
|
|
163
|
-
labelResult: 'Result',
|
|
164
|
-
labelFinalSize: 'Final Size:',
|
|
165
|
-
labelLoss: 'Total Loss:',
|
|
166
|
-
tipText:
|
|
167
|
-
'To calculate the initial size needed to achieve a specific final size, divide the desired size by (1 - shrinkage/100).',
|
|
168
|
-
labelInitialBadge: 'Initial:',
|
|
169
|
-
labelFinalBadge: 'mm final',
|
|
170
|
-
labelLossBadge: 'Loss:',
|
|
171
|
-
labelInitialArea: 'Initial Area',
|
|
172
|
-
labelFinalArea: 'Final Area',
|
|
173
|
-
},
|
|
174
|
-
};
|
|
1
|
+
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { ClayCalculatorUI } from '../ui';
|
|
4
|
+
import { bibliography } from '../bibliography';
|
|
5
|
+
|
|
6
|
+
const slug = 'clay-shrinkage-calculator';
|
|
7
|
+
const title = 'Clay Shrinkage Calculator: Exact Dimensions for Ceramics';
|
|
8
|
+
const description =
|
|
9
|
+
'Calculate clay shrinkage during drying and firing. Design ceramic pieces with the exact final dimensions you need.';
|
|
10
|
+
|
|
11
|
+
const faqData = [
|
|
12
|
+
{
|
|
13
|
+
question: 'Why does clay shrink?',
|
|
14
|
+
answer:
|
|
15
|
+
'Clay shrinks primarily due to water loss. First comes drying (evaporation of water between particles) and then firing (removal of chemically combined water and particle sintering).',
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
question: 'What is the normal shrinkage percentage?',
|
|
19
|
+
answer:
|
|
20
|
+
'It depends on the clay body. Earthenware typically shrinks 5-10%, while stoneware and porcelain can reach 12-15% due to greater vitrification.',
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
question: 'How do I measure the shrinkage of my own clay?',
|
|
24
|
+
answer:
|
|
25
|
+
'Create a test tile exactly 10cm long. Let it dry and measure it (drying shrinkage). Fire it to the final temperature and measure again (total shrinkage). The difference gives you the exact percentage.',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: 'What happens if my piece cracks while drying?',
|
|
29
|
+
answer:
|
|
30
|
+
'This usually indicates drying too fast or unevenly. Thin areas lose water before thick ones, creating tension. Cover pieces with plastic to slow the process.',
|
|
31
|
+
},
|
|
32
|
+
];
|
|
33
|
+
|
|
34
|
+
const howToData = [
|
|
35
|
+
{
|
|
36
|
+
name: 'Measure the piece when wet',
|
|
37
|
+
text: 'Take the exact dimensions of your piece right after throwing or hand-building, while it still retains all its moisture.',
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
name: 'Enter the shrinkage coefficient',
|
|
41
|
+
text: 'Check your clay packaging for the total shrinkage percentage (drying + firing) provided by the manufacturer.',
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
name: 'Get the expected final dimensions',
|
|
45
|
+
text: 'Use the calculator to know how much your piece will measure after firing and plan your fits or lids accordingly.',
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
name: 'Reverse calculation for targets',
|
|
49
|
+
text: 'If you need your piece to measure exactly X cm when finished, use the reverse calculation to find what size it should be on the wheel.',
|
|
50
|
+
},
|
|
51
|
+
];
|
|
52
|
+
|
|
53
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
54
|
+
'@context': 'https://schema.org',
|
|
55
|
+
'@type': 'FAQPage',
|
|
56
|
+
mainEntity: faqData.map((item) => ({
|
|
57
|
+
'@type': 'Question',
|
|
58
|
+
name: item.question,
|
|
59
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
60
|
+
})),
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
const howToSchema: WithContext<HowToThing> = {
|
|
64
|
+
'@context': 'https://schema.org',
|
|
65
|
+
'@type': 'HowTo',
|
|
66
|
+
name: title,
|
|
67
|
+
description,
|
|
68
|
+
step: howToData.map((step, i) => ({
|
|
69
|
+
'@type': 'HowToStep',
|
|
70
|
+
position: i + 1,
|
|
71
|
+
name: step.name,
|
|
72
|
+
text: step.text,
|
|
73
|
+
})),
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
77
|
+
'@context': 'https://schema.org',
|
|
78
|
+
'@type': 'SoftwareApplication',
|
|
79
|
+
name: title,
|
|
80
|
+
description,
|
|
81
|
+
applicationCategory: 'UtilityApplication',
|
|
82
|
+
operatingSystem: 'All',
|
|
83
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'USD' },
|
|
84
|
+
inLanguage: 'en',
|
|
85
|
+
};
|
|
86
|
+
|
|
87
|
+
export const content: ToolLocaleContent<ClayCalculatorUI> = {
|
|
88
|
+
slug,
|
|
89
|
+
title,
|
|
90
|
+
description,
|
|
91
|
+
faqTitle: 'Frequently Asked Questions',
|
|
92
|
+
faq: faqData,
|
|
93
|
+
bibliography,
|
|
94
|
+
howTo: howToData,
|
|
95
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
96
|
+
seo: [
|
|
97
|
+
{
|
|
98
|
+
type: 'title',
|
|
99
|
+
text: 'The Physics of Clay: Shrinkage and Expansion',
|
|
100
|
+
level: 2,
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
type: 'paragraph',
|
|
104
|
+
html: 'Clay is a living material that changes size throughout the ceramic process. From the moment you shape a wet piece to when it comes out of the kiln, it can lose between 8% and 15% of its original size. Calculating this shrinkage is essential for creating pieces with the exact dimensions you need.',
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
type: 'grid',
|
|
108
|
+
columns: [
|
|
109
|
+
{
|
|
110
|
+
type: 'card',
|
|
111
|
+
title: 'Shrinkage Phases',
|
|
112
|
+
html: '<p><strong>1. Drying (Wet → Dry):</strong> As water is lost, clay particles draw together. This is the largest shrinkage phase (4-8%). Thick pieces can crack if they dry too quickly.</p><p><strong>2. Firing (Dry → Bisque):</strong> Between 900-1000°C, clay undergoes irreversible chemical changes. Additional shrinkage of 2-4%. The piece becomes porous but strong.</p><p><strong>3. Vitrification (High Temperature):</strong> At 1200-1300°C, the clay vitrifies. Final shrinkage of 1-3%. Stoneware and porcelain reach maximum density.</p>',
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
type: 'card',
|
|
116
|
+
title: 'Influencing Variables',
|
|
117
|
+
html: '<ul><li><strong>Clay type:</strong> Red clays shrink less (8-10%) than porcelains (12-15%).</li><li><strong>Wall thickness:</strong> Thin walls shrink more uniformly than thick ones.</li><li><strong>Firing temperature:</strong> Higher temperatures mean greater shrinkage and vitrification.</li><li><strong>Grog content:</strong> Adding grog (pre-fired ground clay) reduces shrinkage.</li></ul>',
|
|
118
|
+
},
|
|
119
|
+
],
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
type: 'title',
|
|
123
|
+
text: 'Practical Applications',
|
|
124
|
+
level: 2,
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
type: 'title',
|
|
128
|
+
text: 'Mold Design',
|
|
129
|
+
level: 3,
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
type: 'paragraph',
|
|
133
|
+
html: 'If you need a mug with an 8cm final diameter, and your clay shrinks 12%, you must make the mold <strong>9.1cm</strong>. This reverse calculation is critical in production runs.',
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
type: 'title',
|
|
137
|
+
text: 'Lids and Assemblies',
|
|
138
|
+
level: 3,
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
type: 'paragraph',
|
|
142
|
+
html: 'When creating pieces that must fit together (teapot + lid, jar + lid), both must be made with the same clay and fired together to ensure equal shrinkage. A 1% difference can ruin the fit.',
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
type: 'title',
|
|
146
|
+
text: 'Monumental Sculpture',
|
|
147
|
+
level: 3,
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
type: 'paragraph',
|
|
151
|
+
html: 'In large pieces, differential shrinkage between thick and thin sections can cause cracks. Experienced potters compensate by leaving thicker walls in areas they know will shrink more.',
|
|
152
|
+
},
|
|
153
|
+
],
|
|
154
|
+
ui: {
|
|
155
|
+
labelInitialSize: 'Initial Size (mm)',
|
|
156
|
+
labelShrinkage: 'Shrinkage Percentage (%)',
|
|
157
|
+
labelLow: 'Low (Earthenware)',
|
|
158
|
+
labelMedium: 'Medium (Stoneware)',
|
|
159
|
+
labelHigh: 'High (Porcelain)',
|
|
160
|
+
presetTerracota: 'Earthenware (8%)',
|
|
161
|
+
presetGres: 'Stoneware (12%)',
|
|
162
|
+
presetPorcelana: 'Porcelain (15%)',
|
|
163
|
+
labelResult: 'Result',
|
|
164
|
+
labelFinalSize: 'Final Size:',
|
|
165
|
+
labelLoss: 'Total Loss:',
|
|
166
|
+
tipText:
|
|
167
|
+
'To calculate the initial size needed to achieve a specific final size, divide the desired size by (1 - shrinkage/100).',
|
|
168
|
+
labelInitialBadge: 'Initial:',
|
|
169
|
+
labelFinalBadge: 'mm final',
|
|
170
|
+
labelLossBadge: 'Loss:',
|
|
171
|
+
labelInitialArea: 'Initial Area',
|
|
172
|
+
labelFinalArea: 'Final Area',
|
|
173
|
+
},
|
|
174
|
+
};
|