{"id":"text-slugify","version":"1.0.0","description":"Create a deterministic ASCII or Unicode slug using an explicit, documented normalization profile.","supported_operations":["slugify text","make an ASCII slug","make a Unicode slug","convert title to URL name","normalize words to a slug","create underscore slug"],"unsupported_operations":["GitHub heading duplicate anchors","language-specific transliteration","checking an existing URL-safe name"],"semantics":["The caller selects profile \"ascii\" or \"unicode\"; this tool does not claim one slug convention is universal.","ascii uses runtime Unicode NFKD, removes combining marks, drops remaining non-ASCII characters, lowercases, and retains ASCII a-z and 0-9.","unicode uses runtime Unicode NFKC, lowercases, removes zero-width joiners (U+200C, U+200D), variation selectors (U+FE00 to U+FE0F) and the keycap mark (U+20E3) without splitting the word, and retains Unicode letters and numbers plus any combining marks that follow them, so Hindi vowel signs and Hebrew points stay in the word.","A combining mark with no letter or number before it is dropped as a separator. Lowercasing is the runtime default, not locale-specific, so Turkish capital I with dot gives i plus a combining dot in unicode and i in ascii.","Runs of all other characters become one selected separator; leading and trailing separators are removed. The separator defaults to hyphen. Text with no retained characters gives an empty slug.","Normalization can lengthen text. A slug longer than 4096 UTF-16 code units is rejected with limit_exceeded rather than returned."],"limits":{"max_text_bytes":4096,"max_slug_chars":4096},"pricing":{"status":"unpriced","charge_usd":null},"input_schema":{"type":"object","additionalProperties":false,"required":["text","profile"],"properties":{"text":{"type":"string","minLength":1,"maxLength":4096},"profile":{"type":"string","enum":["ascii","unicode"]},"separator":{"type":"string","enum":["-","_"],"default":"-"}}},"output_schema":{"type":"object","additionalProperties":false,"required":["slug"],"properties":{"slug":{"type":"string","maxLength":4096}}},"examples":[{"input":{"text":"Crème brûlée","profile":"ascii"},"output":{"slug":"creme-brulee"}},{"input":{"text":"שלום עולם","profile":"unicode","separator":"_"},"output":{"slug":"שלום_עולם"}}],"execute_url":"/v1/tools/text-slugify/versions/1.0.0/execute"}