{"_id":"sluggo","_rev":"31-52191379105e9a0b6ad25706ff3794fc","name":"sluggo","dist-tags":{"latest":"1.0.0"},"versions":{"0.1.0":{"name":"sluggo","version":"0.1.0","keywords":["slug","unicode","slugs"],"author":{"name":"P'unk Avenue LLC"},"license":"MIT","_id":"sluggo@0.1.0","maintainers":[{"name":"boutell","email":"boutell@boutell.com"}],"homepage":"https://github.com/punkave/sluggo","bugs":{"url":"https://github.com/punkave/sluggo/issues"},"dist":{"shasum":"eb1a63198aeca11059ffba07d371951f6516e3d6","tarball":"https://registry.npmjs.org/sluggo/-/sluggo-0.1.0.tgz","integrity":"sha512-S+S6FmQeAUG+f81nZLwdvQAQKHk9VGDtpYMaepFWilS+z8xM/QhrbgQXuss776kG7pU0LsGlq5wLGLtMs+Bglw==","signatures":[{"sig":"MEYCIQD7Gugp//zQKABzLSk7QsmP00hLSO3QtMMT2/E1Rbu8DAIhAMDogb7In5PNj62ZXq+NeW8Wu5hmWNjswwTvAGTWXmUh","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"sluggo.js","_from":".","_shasum":"eb1a63198aeca11059ffba07d371951f6516e3d6","scripts":{"test":"mocha test/test.js"},"_npmUser":{"name":"boutell","email":"boutell@boutell.com"},"repository":{"url":"https://github.com/punkave/sluggo","type":"git"},"_npmVersion":"1.4.9","description":"High-speed, unicode-aware, browser-friendly slug generator","directories":{}},"0.1.1":{"name":"sluggo","version":"0.1.1","keywords":["slug","unicode","slugs"],"author":{"name":"P'unk Avenue LLC"},"license":"MIT","_id":"sluggo@0.1.1","maintainers":[{"name":"boutell","email":"boutell@boutell.com"}],"homepage":"https://github.com/punkave/sluggo","bugs":{"url":"https://github.com/punkave/sluggo/issues"},"dist":{"shasum":"a48105257e6c3bd88075a5afa92b16e5189bfa01","tarball":"https://registry.npmjs.org/sluggo/-/sluggo-0.1.1.tgz","integrity":"sha512-SWDFgfA8/gu9n72ERXS5wSthhgNouqnxMDj2KcqnIz73WWI82O5Bv5X8qmwRvmhn1gu0qImkfVZBc/aWgw3bQQ==","signatures":[{"sig":"MEUCIEI9ANPtqjzzrjSizCoKGFhYiXYh3fv6N9lqv7y7j64HAiEA4JCImnGVTJr1bwYOQFavhXSxl5PWPYWlJ6LB5E06i6c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"sluggo.js","_from":".","_shasum":"a48105257e6c3bd88075a5afa92b16e5189bfa01","scripts":{"test":"mocha test/test.js"},"_npmUser":{"name":"boutell","email":"boutell@boutell.com"},"repository":{"url":"https://github.com/punkave/sluggo","type":"git"},"_npmVersion":"1.4.9","description":"High-speed, unicode-aware, browser-friendly slug generator","directories":{}},"0.1.2":{"name":"sluggo","version":"0.1.2","keywords":["slug","unicode","slugs"],"author":{"name":"P'unk Avenue LLC"},"license":"MIT","_id":"sluggo@0.1.2","maintainers":[{"name":"boutell","email":"boutell@boutell.com"}],"homepage":"https://github.com/punkave/sluggo","bugs":{"url":"https://github.com/punkave/sluggo/issues"},"dist":{"shasum":"87951340ea878b9d6e40e5a652799d9ed4992ee7","tarball":"https://registry.npmjs.org/sluggo/-/sluggo-0.1.2.tgz","integrity":"sha512-wsaNEIPGckFQPnafitEzMnL9RcbtN/lyE5b1o+isztTfZrXfGL67d2I//aSzXI2ZsusaXWX//4KtGLKAAMyeBA==","signatures":[{"sig":"MEUCIQC2IjoM4nAtWwsBxVrFP/lKHAerBYziclI+krNRBI7WNAIgKz0+lDkLzoWzeq/3AGG4uMK7inQMuzdWm93/rpjxoaE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"sluggo.js","_from":".","_shasum":"87951340ea878b9d6e40e5a652799d9ed4992ee7","scripts":{"test":"mocha test/test.js"},"_npmUser":{"name":"boutell","email":"boutell@boutell.com"},"repository":{"url":"https://github.com/punkave/sluggo","type":"git"},"_npmVersion":"1.4.9","description":"High-speed, unicode-aware, browser-friendly slug generator","directories":{}},"0.2.0":{"name":"sluggo","version":"0.2.0","keywords":["slug","unicode","slugs"],"author":{"name":"P'unk Avenue LLC"},"license":"MIT","_id":"sluggo@0.2.0","maintainers":[{"name":"boutell","email":"boutell@boutell.com"}],"homepage":"https://github.com/punkave/sluggo","bugs":{"url":"https://github.com/punkave/sluggo/issues"},"dist":{"shasum":"5d0bcb28d70c8c1eee773feec626d15189689cbf","tarball":"https://registry.npmjs.org/sluggo/-/sluggo-0.2.0.tgz","integrity":"sha512-TWSGlmZSlbz/LGenCG+S4pmYb5p6B3hjfXvpss8YOQ8sg0qnmZeUpuhjm3Uiamlk3O4j9XnKzZfwjp7fXBmyfw==","signatures":[{"sig":"MEUCIA9DGQ8W+JIdJbPNrvvAN5uuBiJRgZehtHuHzsF07HRPAiEAxZ1p+trhwC1oYYYxucwA4s/bbZ6YRkEpLSCuaPz8iWQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"sluggo.js","_from":".","_shasum":"5d0bcb28d70c8c1eee773feec626d15189689cbf","scripts":{"test":"mocha test/test.js"},"_npmUser":{"name":"boutell","email":"boutell@boutell.com"},"repository":{"url":"https://github.com/punkave/sluggo","type":"git"},"_npmVersion":"1.4.9","description":"High-speed, unicode-aware, browser-friendly slug generator","directories":{}},"0.3.1":{"name":"sluggo","version":"0.3.1","keywords":["slug","unicode","slugs"],"author":{"name":"Apostrophe Technologies, Inc."},"license":"MIT","_id":"sluggo@0.3.1","maintainers":[{"name":"boutell","email":"tom@apostrophecms.com"}],"homepage":"https://github.com/apostrophecms/sluggo","bugs":{"url":"https://github.com/apostrophecms/sluggo/issues"},"dist":{"shasum":"b05451a972ecd4e0537d1a35854da5a56e6671f5","tarball":"https://registry.npmjs.org/sluggo/-/sluggo-0.3.1.tgz","fileCount":6,"integrity":"sha512-PjWeu6gF/Ux5IMt6GrF98nlTlSNaoQK7ipWSqZ17kWKxTVrKi8+ekZys5vgTiubB10BOPsD0DnqTzaR2njCPsg==","signatures":[{"sig":"MEQCIH1fpRMJQFnqyArmhamgsLdaHe89IxCfBMaWMDoJk4rUAiB7WZwXX7MMaodcgbMMHk/BFZaiF4vvn3+lRWM3u+un7Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":18452,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggwY6CRA9TVsSAnZWagAA6BgP/jYTuMaoR7pyGefJt2Q0\nZ4iPjYlwX+zV7ybrnhv5gQ9eV5GvkZWvq9PyvWaojdQ8ezqgkrBXvGvNNs+O\nSObat6NiIjC5SEn0aQH1/47SHF2zcuAKCRqAmQaRWhQ7E/SuCGKM+zLpecRz\nQECihjCcEihB8YKKBKyEeEYqLIK7KM4i/OTlNckm5aDudWapPVTbSb5YhOWD\ndc0XmvlCh3digALLqCdXVQqmpUiMyDDXfxrKkXcCGwM0Lgq34zIMPvDD6Xdm\n8FGqU3ItJs0dycdg5DERblyoHHT8aou4fctD7JWkHQMECMj5UEu+A+i2MCdV\ns+mOKf8whlXdoHa0L0wjqsYPznJKnUevVJ1Uhp1okBi55mBEoTd02+CNF+zW\nUo8n7kwaN4OXmxhQKMCmHEzapHgODT0hNRSqX7m/ZD+oVfgPvRjSc/xGL3Q7\npJmcVszZEwT+AiHRVtz2tKQzS6aZA5xPspnZjJ9miF1Ej0SrTOTySPgdcyOB\nZQ9CAMf8jXb3IRKkSTP3UCGWlAeLo8XDUuRO8UFP+Hyc0RVhKa2ZhSyxImQX\nrFpCco9GJih0TsBiweU7ENmatKmm+RNlGO3nbF3JyzA427rRT7ieIx2kIYum\nt5zj29gJ+fDmTbYjD4zvhDOtviFcguhlR+wqGSSbE+e4SyI0R/VglQd60O9J\n1HhR\r\n=JpD6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"sluggo.js","gitHead":"80ad3a28a10f1f1f8319de5f85a23602f60c5cc2","scripts":{"test":"mocha test/test.js"},"_npmUser":{"name":"boutell","email":"tom@apostrophecms.com"},"repository":{"url":"git+https://github.com/apostrophecms/sluggo.git","type":"git"},"_npmVersion":"6.14.8","description":"High-speed, unicode-aware, browser-friendly slug generator","directories":{},"_nodeVersion":"14.15.1","_hasShrinkwrap":false,"devDependencies":{"mocha":"^8.3.2"},"_npmOperationalInternal":{"tmp":"tmp/sluggo_0.3.1_1619199545806_0.5907823692721836","host":"s3://npm-registry-packages"}},"1.0.0":{"name":"sluggo","version":"1.0.0","keywords":["slug","unicode","slugs"],"author":{"name":"Apostrophe Technologies, Inc."},"license":"MIT","_id":"sluggo@1.0.0","maintainers":[{"name":"falkodev","email":"anthony@apostrophecms.com"},{"name":"triskuit","email":"tristan.krug@protonmail.com"},{"name":"bodonkey","email":"robert@robertmeans.net"},{"name":"etlaurent","email":"etldev@tuta.io"},{"name":"alexgilbert","email":"alex@apostrophecms.com"},{"name":"stuartromanek","email":"stuart@punkave.com"},{"name":"boutell","email":"tom@apostrophecms.com"},{"name":"alexbea","email":"abea@mailbox.org"},{"name":"gregvanbrug","email":"greg.vanbrug@gmail.com"},{"name":"valjed","email":"vjeudy@protonmail.com"},{"name":"romanek","email":"stuart+npm@apostrophecms.com"},{"name":"mtthwmnc","email":"matthew.mance@gmail.com"},{"name":"breyell","email":"breyell@gmail.com"}],"homepage":"https://github.com/apostrophecms/sluggo","bugs":{"url":"https://github.com/apostrophecms/sluggo/issues"},"dist":{"shasum":"4ecc0c67d8a96bf45b4408db9a8a4d4c0ad19657","tarball":"https://registry.npmjs.org/sluggo/-/sluggo-1.0.0.tgz","fileCount":6,"integrity":"sha512-A/yf0o0XClAxcx2fpN3NgTi13r8h+3ZASB/pMqUM1aogcB3Jipel77Mp2qJgWPm1VYt9MfAvmMN30oY51AiO7g==","signatures":[{"sig":"MEUCICmHEJldvCqTuaC1gSzPI1Mr1cv8k7epqxiPZgHmubw5AiEAgGI6qSgqvUSEOYPhFLDFWJ5j60Qs9o1Zw6Ha6SK78rk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":18751,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkUqScACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpWaA/9ErpZJ82xsldOVV2OVc0Own3ku0yzITOdo50a56FNIkG4KHby\r\noYnw0aE6IHyr2011h5wQgTCvS6sGyfgFudF4TUAfhko5wmO8EQobPj+sbQQs\r\n2Y+iLJRWY2JLizkJJVDRCVnr4MPaDwbCD5IKdNaw+s2YPVHmBgBHi22MIWUi\r\nKXtWg2TdL0LawGFbT/SiI/dMY42Th63cFvKl/aS9ydHjH9Bkn2J44x/a4xIL\r\nFntZ/thCauWqTH+cyi0nK1HOgJHP73kSLp6Wiiv0KtW5bcLdxYKCr7I2aSxM\r\nfUIuYrI9uqBRsn3lB69S1wP+g/PSmEDJEDUpHX4YSdOzkUUleRw5uFTeSqQA\r\nXjDVLYnvL7ZEDp8DOwWV2ZupLYh++PL6JqqTlx+FlU+roDoRlFB7UGwnHrAt\r\nKrYi8/MNAlt5TkAqXKVm8dbuovZvBwYnDTlpU3dsYKTGN66Eo+x5E19Uw7ai\r\nG1TA8XWuPd44IVUJAZI/4mgrctJ1TdCDAyUGDnqgjzQpbataL9dnTyHBZWVF\r\n0IjLBO09I8HxnzpQhyi3BbBI77C5zTckngf5IjjrWr9vd28cfFvOXamJGW1b\r\nF96WVzYqV0HPPlp0RhdPn77w8ELHQ/HyhLkL5Q62hTuhqOaue7daEymumqCh\r\nKYGWcUzihae8m0QmGGCTb05KCqujJvKSRDQ=\r\n=r3bb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"sluggo.js","gitHead":"41a5389542c593dd3a6a72de51fc3b46111cfd9a","scripts":{"test":"mocha test/test.js"},"_npmUser":{"name":"boutell","email":"tom@apostrophecms.com"},"repository":{"url":"git+https://github.com/apostrophecms/sluggo.git","type":"git"},"_npmVersion":"8.19.2","description":"High-speed, unicode-aware, browser-friendly slug generator","directories":{},"_nodeVersion":"16.15.0","_hasShrinkwrap":false,"devDependencies":{"mocha":"^8.3.2"},"_npmOperationalInternal":{"tmp":"tmp/sluggo_1.0.0_1683137692187_0.6724963727216398","host":"s3://npm-registry-packages"}}},"time":{"created":"2014-07-08T17:55:47.809Z","modified":"2026-01-26T19:11:02.568Z","0.1.0":"2014-07-08T17:55:47.809Z","0.1.1":"2014-07-08T18:04:47.466Z","0.1.2":"2014-07-08T18:10:58.225Z","0.2.0":"2014-07-08T20:39:07.848Z","0.3.1":"2021-04-23T17:39:06.000Z","1.0.0":"2023-05-03T18:14:52.404Z"},"bugs":{"url":"https://github.com/apostrophecms/sluggo/issues"},"author":{"name":"Apostrophe Technologies, Inc."},"license":"MIT","homepage":"https://github.com/apostrophecms/sluggo","keywords":["slug","unicode","slugs"],"repository":{"url":"git+https://github.com/apostrophecms/sluggo.git","type":"git"},"description":"High-speed, unicode-aware, browser-friendly slug generator","maintainers":[{"email":"alex@apostrophecms.com","name":"alexgilbert"},{"email":"tom@apostrophecms.com","name":"boutell"},{"email":"stuart+npm@apostrophecms.com","name":"romanek"},{"email":"robert.means1969+apostrophecms@gmail.com","name":"bodonkey"},{"email":"greg.vanbrug@gmail.com","name":"gregvanbrug"},{"email":"stuart@punkave.com","name":"stuartromanek"},{"email":"abea@mailbox.org","name":"alexbea"},{"email":"matthew.mance@gmail.com","name":"mtthwmnc"},{"email":"breyell@gmail.com","name":"breyell"},{"email":"vjeudy@protonmail.com","name":"valjed"}],"readme":"# sluggo\n\n<a href=\"https://apostrophecms.com/\"><img src=\"https://raw.githubusercontent.com/apostrophecms/sanitize-html/main/logos/logo-box-madefor.png\" align=\"right\" alt=\"Made for ApostropheCMS\"/></a>\n\nsluggo is a slug generator that:\n\n* Understands Unicode\n* Runs fast (much, much faster than a RegExp solution)\n* Replaces all runs of punctuation (in any language), control characters, whitespace, etc. with single dashes, with no leading or trailing dashes\n* Allows you to let one punctuation character through if you wish, such as a slash for pathnames\n* Allows you to change the separator character\n* Is small enough to include in your browser javascript (<10K), even with the Unicode data\n\n## Installation\n\n```bash\nnpm install sluggo\n```\n\n## Usage\n\n```javascript\nvar sluggo = require('sluggo');\n\nvar s = sluggo('@ monkey\\'s are elab؉؉orate fools##');\nconsole.log(s);\n```\n\nOutputs:\n\n```\nmonkey-s-are-elab-orate-fools\n```\n\n## Options\n\n### separator\n\nChange the string separator by passing a string (usually one character) to `separator`.\n\n```javascript\nconst sluggo = require('sluggo');\n\nconst s = sluggo('monkey\\'s are elaborate fools', {\n  separator: ','\n});\nconsole.log(s);\n```\n\nOutputs:\n\n```\nmonkey,s,are,elaborate,fools\n```\n\n### allow\n\nSet a single-character string to allow in returned strings. Otherwise all punctuation characters are replaced by the separator.\n\n```javascript\nconst sluggo = require('sluggo');\n\nconst s = sluggo('@ monkey\\'s are elab؉؉orate fools##', {\n  allow: '؉'\n});\nconsole.log(s);\n```\n\nOutputs:\n\n```\nmonkey-s-are-elab؉؉orate-fools\n```\n\n## In the Browser\n\nYou just want `sluggo.js`. Add that file to your frontend javascript world.\n\nNow you can call the `sluggo()` function anywhere.\n\nYou do NOT need `generator.js`, which we will use when the next version of Unicode comes out to update this module.\n\n## About ApostropheCMS\n\nsluggo was created at [P'unk Avenue](https://punkave.com) for use in [ApostropheCMS](https://apostrophecms.com), an open-source content management system built on Node.js. If you like sanitize-html you should definitely check out Apostrophe.\n\n## Support\n\nFeel free to [open issues on Github](http://github.com/apostrophecms/sluggo/issues).\n\n## Changelog\n\n### 1.0.0 - 2023-05-03\n- Accepts an array of exceptions in the `allow` options property while still accepting a string. Declared stable.\n\n### 0.3.1 - 2021-04-23\n- Accepts the empty string as a legitimate value for `def`, as was always intended, rather than forcing `none` in that situation. If `def` is not set at all `none` is still the fallback default.\n\n### 0.3.0 - 2020-01-27\n- Updates package.json with new metadata\n- Updates README.\n\n### 0.2.0\n\nWhoops, the classic apostrophe slugify method accepted `allow`, not `allowed`. We just released this today, so I've switched to `allow` in `sluggo` as well. However I did bump to 0.2.0 to remain faithful to the semver standard.\n\n### 0.1.2\n\nConverts to lowercase properly.\n\n### 0.1.1\n\nPackaged correctly to work in either node or the browser.\n\n### 0.1.0\n\nInitial release.\n","readmeFilename":"README.md"}