@elitedecode/convertible
v0.0.1
Published
A lightweight TypeScript utility library for common conversion functions
Maintainers
Readme
Convertible
A lightweight, TypeScript-first utility library for common conversion functions.
Features
- 🌡️ Temperature Conversion - Convert between Celsius and Fahrenheit
- 💰 Currency Conversion - Convert currency amounts with exchange rates
- 📁 File Size Conversion - Convert between bytes, KB, MB, GB, and TB
- 🔒 TypeScript Support - Full type safety with exported types
- 📦 Zero Dependencies - Lightweight with no external dependencies
Installation
npm install convertibleUsage
Temperature Conversion
import { convertTemperature } from "convertible";
import type { TemperatureUnit } from "convertible";
// Convert 25°C to Fahrenheit
const fahrenheit = convertTemperature(25, "C", "F");
console.log(fahrenheit); // 77
// Convert 68°F to Celsius
const celsius = convertTemperature(68, "F", "C");
console.log(celsius); // 20Currency Conversion
import { convertCurrency } from "convertible";
import type { CurrencyConversionResult } from "convertible";
// Convert 100 USD to EUR (assuming 0.85 exchange rate)
const result: CurrencyConversionResult = convertCurrency(
100,
0.85,
"USD",
"EUR"
);
console.log(result);
// {
// amount: 85,
// exchangeRate: 0.85,
// fromCurrency: 'USD',
// toCurrency: 'EUR'
// }File Size Conversion
import { convertFileSize } from "convertible";
import type { FileSizeUnit } from "convertible";
// Convert 1024 bytes to KB
const kb = convertFileSize(1024, "B", "KB");
console.log(kb); // 1
// Convert 5 MB to GB
const gb = convertFileSize(5, "MB", "GB");
console.log(gb); // 0.005API Reference
Functions
convertTemperature(value, from, to)
Converts temperature between Celsius and Fahrenheit.
- value:
number- Temperature value to convert - from:
TemperatureUnit- Source unit ('C' or 'F') - to:
TemperatureUnit- Target unit ('C' or 'F') - returns:
number- Converted temperature
convertCurrency(amount, exchangeRate, fromCurrency, toCurrency)
Converts currency amount using exchange rate.
- amount:
number- Amount to convert - exchangeRate:
number- Exchange rate (target currency per 1 source currency) - fromCurrency:
string- Source currency code - toCurrency:
string- Target currency code - returns:
CurrencyConversionResult- Object with converted amount and metadata
convertFileSize(size, fromUnit, toUnit)
Converts file size between different units.
- size:
number- Size value to convert - fromUnit:
FileSizeUnit- Source unit ('B', 'KB', 'MB', 'GB', 'TB') - toUnit:
FileSizeUnit- Target unit ('B', 'KB', 'MB', 'GB', 'TB') - returns:
number- Converted size (rounded to 2 decimal places)
Types
TemperatureUnit
type TemperatureUnit = "C" | "F";FileSizeUnit
type FileSizeUnit = "B" | "KB" | "MB" | "GB" | "TB";CurrencyConversionResult
interface CurrencyConversionResult {
amount: number;
exchangeRate: number;
fromCurrency: string;
toCurrency: string;
}Development
Building
npm run buildTypeScript
This package is written in TypeScript and provides full type definitions. The build process generates both CommonJS and ES modules.
License
MIT © beardedtech_guy
