Sqids è una libreria open-source che ti permette di generare identificatori unici brevi da numeri. Questi ID sono sicuri per gli URL, possono codificare diversi numeri e non contengono parole volgari comuni. Leggi di più .
Ecco come appaiono:
Esempio rapido di codifica e decodifica:
import Sqids
Sqids.encode [ 1, 2, 3 ] -- (Ok "86Rf07")
Sqids.decode "86Rf07" -- (Ok [ 1, 2, 3 ])
Se gli ID sono troppo corti, puoi aggiungere zeri fino a una certa lunghezza:
import Sqids
import Sqids.Context
context : Sqids.Context.Context
context = -- set minimum length to 10 in context (check docs)
Sqids.encodeWith context [ 1, 2, 3 ] -- (Ok "86Rf07xd4z")
Sqids.decodeWith context "86Rf07xd4z" -- (Ok [ 1, 2, 3 ])
Crea ID univoci mescolando l'alfabeto:
import Sqids
import Sqids.Context
context : Sqids.Context.Context
context = -- set custom alphabet to "k3G7QAe51FCsPW92uEOyq4Bg6Sp8YzVTmnU0liwDdHXLajZrfxNhobJIRcMvKt" in context (check docs)
Sqids.encodeWith context [ 1, 2, 3 ] -- (Ok "XRKUdQ")
Sqids.decodeWith context "XRKUdQ" -- (Ok [ 1, 2, 3 ])
La documentazione completa si trova su https://github.com/sqids/sqids-elm
Se stai cercando l'originale Hashids Elm, puoi trovarlo qui: https://github.com/pdamoc/elm-hashids
L'uso principale di Sqids è puramente visivo. Se desideri utilizzare ID invece di numeri nel tuo progetto, Sqids potrebbe essere una buona scelta.