idt: công cụ CLI để xử lý nhiều định dạng ID khác nhau
(github.com/sh-cho)Khi phát triển, bạn thường phải dùng nhiều định dạng ID khác nhau như UUID, ULID, Snowflake..., nhưng việc mỗi lần lại phải tìm trình chuyển đổi online hoặc tự viết script để chuyển đổi khá bất tiện, nên tôi đã tạo ra một công cụ CLI có thể dùng ngay trong terminal.
Tính năng chính
- Tạo: UUID(v1/v4/v6/v7), ULID, NanoID, Snowflake, KSUID, TypeID, v.v.
- Phân tích: nhập bất kỳ ID nào để suy luận loại và phân tích cấu trúc bên trong như timestamp, random bit, v.v.
- Chuyển đổi: chuyển đổi giữa nhiều kiểu mã hóa như hex, base32, base58, base64, v.v.
- Hỗ trợ pipe: có thể kết hợp như
idt gen uuid | idt inspect
Cách cài đặt
# Using cargo
cargo install idt
# Using homebrew
brew install sh-cho/tap/idt
Ví dụ sử dụng
# 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 bình luận
Đúng là một sản phẩm rất ấn tượng!!
Mình sẽ dùng thử rồi để lại issue hoặc phản hồi haha
Cảm ơn ạ haha