From 000ee911e500b419eb622c46cb09226af5b28740 Mon Sep 17 00:00:00 2001 From: Chesterkxng Date: Tue, 27 May 2025 00:51:44 +0200 Subject: [PATCH] feat: temperature converter --- .../tools/number/generic-calc/data/index.ts | 5 +- .../number/generic-calc/data/temperature.ts | 59 +++++++++++++++++++ 2 files changed, 63 insertions(+), 1 deletion(-) create mode 100644 src/pages/tools/number/generic-calc/data/temperature.ts diff --git a/src/pages/tools/number/generic-calc/data/index.ts b/src/pages/tools/number/generic-calc/data/index.ts index 465a203..fe214ed 100644 --- a/src/pages/tools/number/generic-calc/data/index.ts +++ b/src/pages/tools/number/generic-calc/data/index.ts @@ -3,10 +3,13 @@ import voltageDropInWire from './voltageDropInWire'; import sphereArea from './sphereArea'; import sphereVolume from './sphereVolume'; import slackline from './slackline'; +import temperatureConversion from './temperature'; + export default [ ohmslaw, voltageDropInWire, sphereArea, sphereVolume, - slackline + slackline, + temperatureConversion ]; diff --git a/src/pages/tools/number/generic-calc/data/temperature.ts b/src/pages/tools/number/generic-calc/data/temperature.ts new file mode 100644 index 0000000..a0c58e9 --- /dev/null +++ b/src/pages/tools/number/generic-calc/data/temperature.ts @@ -0,0 +1,59 @@ +import type { GenericCalcType } from './types'; + +const temperatureConversion: GenericCalcType = { + icon: 'carbon:temperature-inversion', + keywords: ['temperature', 'conversion', 'celcius', 'fahrenheit', 'Kelvin'], + shortDescription: + 'Convert temperatures between common scales like Celsius, Fahrenheit, Kelvin, and Rankine.', + name: 'Temperature Converter', + path: 'temperaure-conversion', + description: + 'Convert temperatures between common scales like Celsius, Fahrenheit, Kelvin, and Rankine.', + longDescription: `This calculator allows you to convert temperatures between Celsius, Fahrenheit, Kelvin, and Rankine. It is useful for scientists, engineers, students, and anyone needing to switch between these temperature scales for various applications. + +Formulas Used: + +Celsius (°C) ↔ Fahrenheit (°F): + °F = (°C × 9/5) + 32, and °C = (°F - 32) × 5/9 || + +Celsius (°C) ↔ Kelvin (K): + K = °C + 273.15, and °C = K - 273.15 || + +Celsius (°C) ↔ Rankine (°R): + °R = (°C + 273.15) × 9/5, and °C = (°R - 491.67) × 5/9 || + +Kelvin (K) ↔ Fahrenheit (°F): + °F = (K - 273.15) × 9/5 + 32, and K = (°F - 32) × 5/9 + 273.15 || + +Kelvin (K) ↔ Rankine (°R): + °R = K × 9/5, and K = °R × 5/9`, + formula: 'TdegC = (TdegF - 32) * 5/9', + presets: [], + variables: [ + { + name: 'TdegC', + title: 'Celsius', + unit: 'tempC' + }, + { + name: 'TdegF', + title: 'Farenheit', + unit: 'tempF', + default: 32, + alternates: [ + { + title: 'Kelvin', + formula: 'x = (v -32) * 5/9 + 273.15', + unit: 'tempK' + }, + { + title: 'Rankine', + formula: 'x = v + 459.67', + unit: 'tempR' + } + ] + } + ] +}; + +export default temperatureConversion;