npm version npm downloads bundle Codecov
Install using npm or yarn:
npm i scule
Import:
// CommonJS const { pascalCase } = require("scule"); // ESM import { pascalCase } from "scule";
Notice: You may need to transpile package for legacy environments.
Splits string and joins by PascalCase convention:
pascalCase("foo-bar_baz"); // FooBarBaz
Notice: If an uppercase letter is followed by other uppercase letters (like FooBAR), they are preserved. You can use { normalize: true } for strictly following pascalCase convention.
Splits string and joins by camelCase convention:
camelCase("foo-bar_baz"); // fooBarBaz
Splits string and joins by kebab-case convention:
kebabCase("fooBar_Baz"); // foo-bar-baz
Notice: It does not preserve case.
Splits string and joins by snake_case convention:
snakeCase("foo-barBaz"); // foo_bar_baz
Splits string and joins by flatcase convention:
flatCase("foo-barBaz"); // foobarbaz
Split string and joins by Train-Case (a.k.a. HTTP-Header-Case) convention:
trainCase("FooBARb"); // Foo-Ba-Rb
Notice: If an uppercase letter is followed by other uppercase letters (like WWWAuthenticate), they are preserved (=> WWW-Authenticate). You can use { normalize: true } for strictly only having the first letter uppercased.
With Title Case all words are capitalized, except for minor words.
A compact regex of common minor words (such as a, for, to) is used to automatically keep them lower case.
titleCase("this-IS-aTitle"); // This is a Title
Converts first character to upper case:
upperFirst("hello world!"); // Hello world!
Converts first character to lower case:
lowerFirst("Hello world!"); // hello world!
- Splits string by the splitters provided (default:
['-', '_', '/', '.']) - Splits when case changes from lower to upper or upper to lower
- Ignores numbers for case changes
- Case is preserved in returned value
- Is an irreversible function since splitters are omitted