À propos du projet

go-branded-id est une bibliothèque Go qui fournit des identifiants fortement typés et personnalisés. Elle utilise des types fantômes pour empêcher le mélange de différents ID d'entités (par exemple, UserID vs OrderID) au moment de la compilation, détectant ainsi des bogues qui passeraient autrement inaperçus. La bibliothèque est sans allocation pour les opérations de base, n'utilise que la bibliothèque standard de Go et prend en charge la sérialisation complète, y compris JSON, SQL, Text, Binary et Gob. Elle fonctionne avec tout type comparable, offre une sémantique de valeur zéro (sérialise en null en JSON, nil en SQL) et inclut un scanner/valuer SQL. Les types de marque nommés peuvent fournir une méthode Name() pour des chaînes visibles en débogage et une validation sensible à la marque. La bibliothèque fournit également des erreurs sentinelles pour la gestion des erreurs et un outil de codemod pour générer des stubs Name(). Elle nécessite Go 1.26 ou version ultérieure.