idt: ferramenta CLI para lidar com diversos formatos de ID
(github.com/sh-cho)Ao desenvolver, é muito comum usar diversos formatos de ID, como UUID, ULID e Snowflake. Como é incômodo ter que procurar um conversor online toda vez ou escrever scripts para fazer conversões, criei uma ferramenta CLI que pode ser usada diretamente no terminal.
Principais recursos
- Geração: UUID (v1/v4/v6/v7), ULID, NanoID, Snowflake, KSUID, TypeID etc.
- Inspeção: ao inserir qualquer ID, a ferramenta infere o tipo e analisa a estrutura interna, como timestamp e bits aleatórios
- Conversão: conversão entre vários encodings, como hex, base32, base58 e base64
- Suporte a pipe: permite combinações como
idt gen uuid | idt inspect
Como instalar
# Using cargo
cargo install idt
# Using homebrew
brew install sh-cho/tap/idt
Exemplos de uso
# 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 comentários
Que trabalho impressionante!!
Vou testar e deixar uma issue ou feedback depois haha
Obrigado rsrs