Skip to content
/ scule Public
forked from unjs/scule

🧵 String Case Utils

License

Notifications You must be signed in to change notification settings

rizen/scule

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🧵 Scule

npm version npm downloads Github Actions Codecov bundle

Install

Install using npm or yarn:

npm i scule
# or
yarn add scule

Import:

// CommonJS
const { pascalCase } = require('scule')

// ESM
import { pascalCase } from 'scule'

Notice: You may need to transpile package for legacy environments

Utils

pascalCase(str)

Splits string and joins by PascalCase convention (foo-bar => FooBar)

Remarks:

  • If an uppercase letter is followed by other uppercase letters (like FooBAR), they are preserved

camelCase

Splits string and joins by camelCase convention (foo-bar => fooBar)

kebabCase(str)

Splits string and joins by kebab-case convention (fooBar => foo-bar)

Remarks:

  • It does not preserve case

snakeCase

Splits string and joins by snake_case convention (foo-bar => foo_bar)

upperFirst(str)

Converts first character to upper case

lowerFirst(str)

Converts first character to lower case

splitByCase(str, splitters?)

  • 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

Development

  • Clone this repository
  • Install latest LTS version of Node.js
  • Enable Corepack using corepack enable
  • Install dependencies using pnpm install
  • Run interactive tests using pnpm dev

License

MIT

About

🧵 String Case Utils

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 100.0%