Skip to content

sen-ltd/id-generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ID Generator

Demo

UUID v4 / UUID v7 / ULID / NanoID / KSUID を並べて生成・比較できる静的 Web ツール。各形式の構造と特性(長さ・ビット数・ソート可能性)を一目で確認できます。ゼロ依存、ビルド不要。

Live demo: https://sen.ltd/portfolio/id-generator/

Screenshot

Generate UUID v4, UUID v7, ULID, NanoID and KSUID side by side. Compare structure, length, entropy, and sortability at a glance. Zero dependencies, no build step.

特徴 / Features

  • 5 形式同時生成: UUID v4 / UUID v7 / ULID / NanoID / KSUID
  • 構造解説: 各形式の bits 割り当て(タイムスタンプ / ランダム)を日英で
  • 比較メタ情報: 文字数・ビット数・ソート可能性をバッジで表示
  • 自動更新モード: 1 秒ごとに再生成
  • コピーボタン
  • 日本語 / 英語 UI 切替
  • ゼロ依存、ビルドツール不要

対応 ID 形式

形式 長さ ビット ソート可能 特徴
UUID v4 36 128 × 完全ランダム、互換性最高
UUID v7 36 128 RFC 9562、timestamp-first
ULID 26 128 Crockford Base32、UUID v7 より短い
NanoID 21 126 × URL-safe、UUID より短い
KSUID 27 160 2014 epoch、高エントロピー

ローカル起動 / Run locally

npm run serve
# → http://localhost:8080

テスト / Tests

npm test

node --test を使用。23 test cases、外部ライブラリなし。

仕組み / How it works

  • src/ids/uuidv4.jscrypto.randomUUID ラッパ + fallback
  • src/ids/uuidv7.js — RFC 9562 手書き実装
  • src/ids/ulid.js — Crockford Base32 手書き実装
  • src/ids/nanoid.js — 公式アルゴリズムをゼロ依存で再実装
  • src/ids/ksuid.js — 2014 epoch + BigInt による base62 encode
  • src/explain.js — 各形式のメタ情報

各モジュール独立、DOM 非依存、純粋関数。

関連記事 / Articles

  • dev.to (EN): (TBD)
  • Zenn (JA): (TBD)

ライセンス / License

MIT. See LICENSE.


Part of the SEN portfolio series — 100+ open-source projects showcasing SEN LLC's engineering.

Links

About

Generate UUID v4/v7, ULID, NanoID, and KSUID side by side with explanations

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors