Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jonschlinkert/dashify
Convert a string to a dash-separated string (kebab case). Works with camelcase, pascalcase, space-separated, etc.
https://github.com/jonschlinkert/dashify
case dash dash-case dashcase hyphenate javascript jonschlinkert kebab-case node nodejs slug string
Last synced: 3 days ago
JSON representation
Convert a string to a dash-separated string (kebab case). Works with camelcase, pascalcase, space-separated, etc.
- Host: GitHub
- URL: https://github.com/jonschlinkert/dashify
- Owner: jonschlinkert
- License: mit
- Created: 2015-02-13T02:51:00.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2021-11-27T08:44:37.000Z (about 3 years ago)
- Last Synced: 2024-12-27T20:11:41.663Z (12 days ago)
- Topics: case, dash, dash-case, dashcase, hyphenate, javascript, jonschlinkert, kebab-case, node, nodejs, slug, string
- Language: JavaScript
- Homepage:
- Size: 20.5 KB
- Stars: 88
- Watchers: 3
- Forks: 15
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# dashify [![NPM version](https://img.shields.io/npm/v/dashify.svg?style=flat)](https://www.npmjs.com/package/dashify) [![NPM monthly downloads](https://img.shields.io/npm/dm/dashify.svg?style=flat)](https://npmjs.org/package/dashify) [![NPM total downloads](https://img.shields.io/npm/dt/dashify.svg?style=flat)](https://npmjs.org/package/dashify) [![Linux Build Status](https://img.shields.io/travis/jonschlinkert/dashify.svg?style=flat&label=Travis)](https://travis-ci.org/jonschlinkert/dashify)
> Convert a camelcase or space-separated string to a dash-separated string. ~12 sloc, fast, supports diacritics.
Please consider following this project's author, [Jon Schlinkert](https://github.com/jonschlinkert), and consider starring the project to show your :heart: and support.
## Install
Install with [npm](https://www.npmjs.com/):
```sh
$ npm install --save dashify
```## Why another dashify lib?
Most slugify libs cover way too many corner cases and are bloated and slow as a result. I made this as a fast and light alternative (it even supports diacritics in ~12 sloc).
## Usage
```js
var dashify = require('dashify');console.log(dashify('fooBar'));
//=> 'foo-bar'console.log(dashify('fooBarBaz'));
//=> 'foo-bar-baz'console.log(dashify('foo bar'));
//=> 'foo-bar'console.log(dashify('foo barBaz'));
//=> 'foo-bar-baz'console.log(dashify('foo barBaz quux'));
//=> 'foo-bar-baz-quux'console.log(dashify('São Tomé and Príncipe'));
//=> 'são-tomé-and-príncipe'
```## options.condense
**Type:** `boolean`
**Default**: `undefined`
Condense multiple consecutive dashes to one.
```js
console.log(dashify('Foo----Bar'));
//=> 'foo----bar'console.log(dashify('Foo----Bar', {condense: true}));
//=> 'foo-bar'
```## About
Contributing
Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new).
Running Tests
Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command:
```sh
$ npm install && npm test
```Building docs
_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_
To generate the readme, run the following command:
```sh
$ npm install -g verbose/verb#dev verb-generate-readme && verb
```### Related projects
Other awesome string libs you might like:
* [pascalcase](https://www.npmjs.com/package/pascalcase): Convert a string to pascal-case. | [homepage](https://github.com/jonschlinkert/pascalcase "Convert a string to pascal-case.")
* [romanize](https://www.npmjs.com/package/romanize): Convert numbers to roman numerals (useful for books, outlines, documentation, slide decks, etc) | [homepage](https://github.com/jonschlinkert/romanize "Convert numbers to roman numerals (useful for books, outlines, documentation, slide decks, etc)")
* [word-wrap](https://www.npmjs.com/package/word-wrap): Wrap words to a specified length. | [homepage](https://github.com/jonschlinkert/word-wrap "Wrap words to a specified length.")
* [wordcount](https://www.npmjs.com/package/wordcount): Count the words in a string. Support for english, CJK and Cyrillic. | [homepage](https://github.com/jonschlinkert/wordcount "Count the words in a string. Support for english, CJK and Cyrillic.")### Contributors
| **Commits** | **Contributor** |
| --- | --- |
| 23 | [jonschlinkert](https://github.com/jonschlinkert) |
| 1 | [der-On](https://github.com/der-On) |
| 1 | [jeffreypriebe](https://github.com/jeffreypriebe) |### Author
**Jon Schlinkert**
* [GitHub Profile](https://github.com/jonschlinkert)
* [Twitter Profile](https://twitter.com/jonschlinkert)
* [LinkedIn Profile](https://linkedin.com/in/jonschlinkert)### License
Copyright © 2018, [Jon Schlinkert](https://github.com/jonschlinkert).
Released under the [MIT License](LICENSE).***
_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.8.0, on November 19, 2018._