Минималистичная TypeScript-библиотека, которая генерирует безопасные, URL-дружественные ID без хранения в БД и без запросов на сервер.
Зачем это нужно?
Обычные ID вроде
abc123 легко подменить — например, на admin. legid защищает от этого:▪ ID содержит хеш-сигнатуру и соль — проверяется на подделку
▪ Работает полностью на клиенте
▪ Проверка на сервере — одной строчкой
verifyId(id) ▪ Без внешних зависимостей
▪ Безопасно, быстро, удобно
📦 Пример:
const id = await createId({ approximateLength: 12, salt: 'legid:' })
// → "e3N4BRJW2d"
🧪 Проверка:
const isValid = await verifyId(id) // true / false
Полезно для:
— PWA / SPA с клиентской маршрутизацией
— генерации ссылок без БД
— frontend-only MVP/демо/форм
— предотвращения предсказуемых ID
📌 Установка:
pnpm add legid
Репозиторий: github.com/shuding/legid
