tl&dr: Hashids has been upgraded & rebranded to Sqids.
Hashids is a small library that generates short unique IDs from numbers. By now, it supports implementations in many different programming languages. It has served the community well over the last few years & we believe we can improve it in a few ways:
- Repos are now hosted in one place. That way it's easier to maintain & update code (existing repos stay where they are).
- Consistent output. All supported programming languages produce the same IDs.
- Simpler algorithm. The new algorithm produces better randomized IDs, while keeping implementation simple.
- Simplified API. Only
encode
anddecode
functions w/ clear indication for the largest supported unsigned integer. - No more salt. Support for custom IDs is now done by providing a manually shuffled alphabet. This is an optional step.
- Profanity blocklist. Support for blocking specific words from appearing in generated IDs. Libraries come with a basic default blocklist for several languages.
- Clear goals & examples. More defined use-cases that emphasize what this library is good for (and not good for).
- New name. No association with hashes anymore + shorter name.
- Updated website. Now includes use-cases, playground, easier repo filtering, FAQs & features.
- Sponsor support. To ensure that the project can be sustained for years to come.
Nothing. Existing implementations stay where they are. They have plenty of on-going usage & the new website links to them as well.
No. Sqids produces different IDs. We advise to use it only on new projects or if you are not using any pre-generated IDs.
No. Upgrading repos is an on-going process. You can see the progress here. You can also help by contributing.
Now. Most implementations have already been published.
Sqids website is a good starting place.