Generate of so called "speaking URL" or "slug" from a string for use in browser or server. It gives you a lot of options i.e. custom separator, allowed chars according to RFC3986, maintain uppercase, custom chars converting, truncate on word boundary and symbol translation (i.e. currency symbols). https://github.com/pid/speakingurl