caseforge
v0.3.0
Published
caseforge - Effortlessly convert between snake_case, camelCase, and more in TypeScript. Zero dependencies, type-safe, and easy to use for any project.
Downloads
119
Maintainers
Readme
caseforge
Type-safe and lightweight case conversion library for TypeScript.
Features
- 🎯 Type-safe conversions with full TypeScript support
- 🪶 Zero dependencies
- 🔄 Supports camelCase, snake_case, kebab-case, PascalCase, and UPPER_CASE
- 🔍 Case format detection functions
- 🌳 Deep object and array transformation
- 📦 Works with Bun, Node.js, and browsers
Installation
npm install caseforgeimport {
toCamelCase,
toSnakeCase,
toKebabCase,
toPascalCase,
toUpperCase,
isCamelCase,
isSnakeCase,
isKebabCase,
isPascalCase,
isUpperCase
} from "caseforge";
// String conversion
toCamelCase("user_name"); // => "userName"
toSnakeCase("userName"); // => "user_name"
toKebabCase("userName"); // => "user-name"
toPascalCase("user_name"); // => "UserName"
toUpperCase("userName"); // => "USER_NAME"
// Case format detection
isCamelCase("userName"); // => true
isSnakeCase("user_name"); // => true
isKebabCase("user-name"); // => true
isPascalCase("UserName"); // => true
isUpperCase("USER_NAME"); // => true
// Object conversion with type inference
const apiResponse = {
user_id: 123,
user_name: "John",
user_settings: {
notification_enabled: true
}
};
const result = toCamelCase(apiResponse);
// result.userId (typed!)
// result.userName (typed!)
// result.userSettings.notificationEnabled (typed!)
// Detect API response format and convert accordingly
const sampleKey = Object.keys(apiResponse)[0];
if (isSnakeCase(sampleKey)) {
const converted = toCamelCase(apiResponse);
// Use converted data
}API
Conversion Functions
toCamelCase(input)- Converts to camelCasetoSnakeCase(input)- Converts to snake_casetoKebabCase(input)- Converts to kebab-casetoPascalCase(input)- Converts to PascalCasetoUpperCase(input)- Converts to UPPER_SNAKE_CASE
Detection Functions
isCamelCase(value)- Checks if a string is in camelCase formatisSnakeCase(value)- Checks if a string is in snake_case formatisKebabCase(value)- Checks if a string is in kebab-case formatisPascalCase(value)- Checks if a string is in PascalCase formatisUpperCase(value)- Checks if a string is in UPPER_SNAKE_CASE format
License
MIT © Chikada Hiroki
