Within this document, we’ll explain how to launch a token on Injective.There are two options for launching a token on Injective: bridging an existing token or creating a new token.
The easiest way to launch a token on Injective is by bridging your existing assets from one of the supported networks that Injective is interoperable with. There are guides in the bridge sections that you can reference to bridge assets from other networks to Injective.Once the bridging process is completed, a token will be created on Injective, which you can then use to launch a market.
The TokenStation web app provides you the ability to create and manage tokens seamlessly, creating a market on Injective’s native orderbook, launching an airdrop, and much more.
Tokens are namespaced by the creator address to be permissionless and avoid name collision. In the example above, the subdenom is ak but the denom naming will be factory/{creator address}/{subdenom}.
Submit token metadata
To get your token visible on Injective dApps, you have to submit its metadata.
It’s recommended once you have minted the initial supply to change admin to the null address to make sure that the supply of the token cannot be manipulated. Once again, the admin of the token can mint and burn supply anytime. The NEW_ADDRESS, as explained above in most of the cases should be set to inj1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqe2hm49.
The examples above are for testnet. If you want to run them on mainnet, do the following changes:injective-888 > injective-1https://testnet.sentry.tm.injective.network:443 > http://sentry.tm.injective.network:443
To create and manage a bank token programmatically via a smart contract, one can use the following messages found in the injective-cosmwasm package: create_new_denom_msg
Purpose: Creates a message to set or update metadata for a token.Parameters:
denom: The denomination identifier of the token.
name: The full name of the token.
symbol: The symbol of the token.
decimals: The number of decimal places the token uses.
Returns: A CosmosMsg wrapped in an InjectiveMsgWrapper, ready to be sent to the Injective blockchain.Example:
Copy
Ask AI
let metadata_message = create_set_token_metadata_msg( "mytoken".to_string(), // Denomination identifier "My Custom Token".to_string(), // Full name "MYT".to_string(), // Symbol 18, // Number of decimals);