idt : un outil CLI pour manipuler différents formats d’ID
(github.com/sh-cho)Quand on développe, on est souvent amené à utiliser différents formats d’ID comme UUID, ULID, Snowflake, etc. Comme il est fastidieux de devoir chercher un convertisseur en ligne à chaque fois ou d’écrire un script pour faire les conversions, j’ai créé un outil CLI utilisable directement dans le terminal.
Fonctionnalités principales
- Génération : UUID (v1/v4/v6/v7), ULID, NanoID, Snowflake, KSUID, TypeID, etc.
- Analyse : en entrant n’importe quel ID, l’outil en déduit le type et analyse sa structure interne, comme l’horodatage et les bits aléatoires
- Conversion : conversion entre différents encodages comme hex, base32, base58, base64, etc.
- Prise en charge des pipes : combinaisons possibles comme
idt gen uuid | idt inspect
Installation
# Using cargo
cargo install idt
# Using homebrew
brew install sh-cho/tap/idt
Exemples d’utilisation
# Generate a UUIDv7
$ idt gen uuidv7
019c04e5-6118-7b22-95cb-a10e84dad469
# Inspect the generated ID
$ idt inspect 019c04e5-6118-7b22-95cb-a10e84dad469
UUIDV7
019c04e5-6118-7b22-95cb-a10e84dad469
Time 2026-01-28T13:57:47.416Z
Version 7
Variant RFC4122
Random 62 bits
Hex 019c04e561187b2295cba10e84dad469
Base64 AZwE5WEYeyKVy6EOhNrUaQ==
Int 2139325608653621017571381452845274217
# Convert to different formats
$ idt convert 019c04e5-6118-7b22-95cb-a10e84dad469 -f base64
AZwE5WEYeyKVy6EOhNrUaQ==
2 commentaires
C’est un travail impressionnant !!
Je vais l’essayer et laisser des issues ou des retours haha
Merci haha