Chain Agnostic Namespaces (CANs) describe a blockchain ecosystem or set of ecosystems as a namespace, relying as much as possible on the CAIP specifications to minimize the research needed to interact with assets, contracts, and accounts in that namespace.
Each namespace implements one or more CAIPs. The most important CAIPs to consider for a namespace are:
- Blockchain ID - A unique way to represent individual blockchains, also gives the namespace its name
- Account ID - Unique representations of blockchain accounts (also used in DID PKH)
- Asset Type and Asset ID - Uniquely refer to assets within the namespace
- SIWx - Namespaces that support SIWx can be used with CACAO
- Review CAIP-104.
- Fork the repository.
- Add your CAIP to your fork of the repository. There [will soon be] a template CAN here.
- Submit a Pull Request to Chain Agnostics's
namespaces
repository.
Your first PR should be a first draft of the final CAN, with all applicable CAIPs addressed. An editor will manually review the first PR for a new CAN and assign it a number before merging it. Make sure you include a discussions-to
header with the URL to a discussion forum or open GitHub issue where people can discuss the CAN as a whole.
If your CAN requires images, the image files should be included in a subdirectory of the assets
folder for that CAN as follows: assets/namespace-N
(where N is to be replaced with the CAN name). When linking to an image in the CAN, use relative links such as ../assets/namespace-{N}/image.png
.
- Draft - an CAN that is undergoing rapid iteration and changes.
- Last Call - an CAN that is done with its initial iteration and ready for review by a wide audience.
- Accepted - a core CAN that has been in Last Call for at least 2 weeks and any technical changes that were requested have been addressed by the author.
eip155
- Draft