Post
Like with any other event. Just add a tag to the tag list, called ["badges", "badgeID1", "badgeID2"]. Just list all of them and the client can check for the one it needs to display on some particular page. Can do the same with NIP-05s, Lightning wallets, etc. Any tag is an array, with the first entry being the title of the list.
An example, based upon semisol NIP, above: { "id": <id>, "pubkey": <pubkey>, "tags": [ ["i", "github:semisol", "9721ce4ee4fceb91c9711ca2a6c9a5ab"], ["i", "twitter:semisol_public", "1619358434134196225"], ["i", "mastodon:bitcoinhackers.org/@semisol", "109775066355589974"] ["i", "telegram:1087295469", "nostrdirectory/770"], ["badges", "badgeID1", "badgeID2"] ], // other fields... }