node-slug is a small utility library for converting arbitrary strings into URL-friendly “slugs.” It replaces spaces and special characters with dashes, transliterates accented or non-ASCII characters into simpler equivalents, and ensures the output string is clean, lowercase, and suitable for use in URLs. The library is commonly used in content management systems, blogging engines, and SEO-sensitive applications where readable and consistent slugs are required. It supports many languages and character sets, allowing international text to be transformed into a safe format. The implementation is straightforward and can be embedded easily into Node.js applications with minimal configuration. It’s designed for reliability and predictability so that the same input always produces the same slug, ensuring stable URLs over time.
Features
- Converts strings into URL-safe slugs while handling Unicode characters
- Compliant with RFC 3986 for URL safety
- Comprehensive test suite ensures reliability
- No dependencies aside from a Unicode lookup table
- Coerces foreign symbols into English equivalents when possible
- Usable in both browser and CommonJS/AMD environments