npm-shortidx
es una librería para generar identificadores aleatorios cortos. Incluye funciones para generar IDs con diferentes conjuntos de caracteres y para reordenar arrays de manera aleatoria.
npm i npm-shortidx
yarn add npm-shortidx
ShortIdx() , RandomIdx(), CustomIdx(), RepeatIdx(), ShuffleX(), IndexShuffle(), ShuffleString()
Genera IDs aleatorios con caracteres alfanuméricos.
Caracteres usados:
0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_
Uso:
import { ShortIdx } from "npm-shortidx";
ShortIdx(); // "G7ksLzW"
ShortIdx(12); // "AdE8fsU1KqpQ"
Genera IDs aleatorios que incluyen símbolos y caracteres especiales.
Caracteres usados:
0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_!#$%&'()*+,./:;<=>?@[]^`{|}~\"
Uso:
import { RandomIdx } from "npm-shortidx";
RandomIdx(); // "s@L!z82_"
RandomIdx(10); // "*>d3@9x^Z!"
Genera un ID usando un conjunto de caracteres personalizado.
import { CustomIdx } from "npm-shortidx";
CustomIdx("ABC123", 5); // "2B1AC"
Genera múltiples IDs de forma masiva.
import { RepeatIdx, ShortIdx } from "npm-shortidx";
RepeatIdx(4, ShortIdx); // ["R3f7tK1", "gTz1xL9", ...]
RepeatIdx(3, RandomIdx, 10); // ["<xD&0j9@#", "2K!lm8$@#", ...]
Reordena arrays de forma aleatoria.
import { ShuffleX } from "npm-shortidx";
const items = ['a', 'b', 'c', 'd'];
ShuffleX(items); // ['c', 'a', 'd', 'b']
ShuffleX(items, 2); // ['b', 'd']
Devuelve un array de índices aleatorios.
import { IndexShuffle } from "npm-shortidx";
IndexShuffle(5); // [2, 0, 4, 1, 3]
Desordena los caracteres de un string.
import { ShuffleString } from "npm-shortidx";
ShuffleString("abcdef"); // "ecdbfa"
Uso en React
import { ShortIdx } from "npm-shortidx";
function App() {
const letters = ["a", "b", "c", "d"];
return (
<>
<p>{ShortIdx()}</p>
{letters.map(letter => (
<p key={ShortIdx()}>{letter}</p>
))}
</>
);
}
Cambiando la longitud del ID
ShortIdx(15); // "Kz83kJqsTg92Lm1"
Generando múltiples IDs
RepeatIdx(5, RandomIdx, 10); // ['@d8Lz!pZ3x', '29&Lk1@9Tq', ...]
Reordenando caracteres de un string
ShuffleString("hola mundo"); // "ouh nldma"
¡Las contribuciones son bienvenidas! Siéntete libre de abrir un issue o enviar un pull request.