Slughorn.js is an open source library that transforms string value to a url slug optimized for SEO.
- Very lightweight
- Thoroughly tested
- Works in browsers and Node.js
- Old browsers support (IE9)
$ npm i @dwtechs/slughorn
$ yarn add @dwtechs/slughorn
import { convert } from "@dwtechs/slughorn";
const url = 'Hello World'; // A sentence to be slugified
let slug = convert(url); // hello-world
const options = {separator: '_', maxLength: 8 };
slug = convert(url, options); // hello_wo
const slughorn = require("@dwtechs/slughorn/dist/slughorn.cjs");
var url = 'Hello World'; // A sentence to be slugified
var slug = slughorn.convert(url); // hello-world
var options = {separator: '_', maxLength: 8 };
slug = slughorn.convert(url, options); // hello_wo
<script src="node-modules/@dwtechs/slughorn/dist/slughorn.iife.min.js"></script>
var url = 'Hello World'; // A sentence to be slugified
var slug = Slughorn.convert(url); // hello-world
var options = {separator: '_', maxLength: 8 };
slug = convert(url, options); // hello_wo
convert(url: string, options?: Options): string|false {}
interface Options {
separator?: string; // a string to replace spaces. Default to '-'
maxLength?: number; // The max length of the slug. Default to 80
seo?: boolean; // SEO optimization. Default to 'true'
}
Slughorn.js is still in development and we would be glad to get all the help you can provide. To contribute please read contributor.md for detailed installation guide.
Purpose | Choice | Motivation |
---|---|---|
repository | Github | hosting for software development version control using Git |
package manager | npm | default node.js package manager |
language | TypeScript | static type checking along with the latest ECMAScript features |
module bundler | Rollup.js | advanced module bundler for ES6 modules |
unit testing | Jest | delightful testing with a focus on simplicity |