- Docs
- Developers
- Crates
Crates
The Archway team has developed a comprehensive suite of crates to help with building smart contracts on Archway. These crates provide a wide range of features, from metadata support and marketplace capabilities to permissioned access and updatable tokens. Below is an introduction to each crate and its purpose.
1. cw721-metadata
- Repository: GitHub
- Description: This crate extends the standard CW721 contract with support for rich metadata. It enables developers to attach and manage additional information, such as artwork or detailed descriptions, to each NFT.
- Use Case: Ideal for projects that require enhanced NFT metadata management, such as art collections, gaming assets, or digital certificates.
2. cw721-marketplace
- Repository: Crates.io
- Description: A marketplace implementation for trading CW721 NFTs. This crate allows developers to create decentralized marketplaces where users can list, buy, and sell NFTs in a trustless manner.
- Use Case: Useful for developers building NFT trading platforms or adding marketplace functionality to existing projects.
3. cw721-marketplace-utils
- Repository: Crates.io
- Description: A set of utilities designed to support the CW721 marketplace. This crate provides helpful tools for managing and interacting with the marketplace contract, streamlining the development process.
- Use Case: Developers working with CW721 marketplaces can use this crate to simplify interactions with marketplace contracts.
4. cw721-marketplace-permissioned
- Repository: Crates.io
- Description: A permissioned version of the CW721 marketplace, allowing only approved parties to list and trade NFTs. This provides additional control over who can participate in the marketplace, making it suitable for curated or closed ecosystems.
- Use Case: Ideal for use cases where marketplace participation needs to be restricted, such as exclusive art galleries or private NFT clubs.
5. cw721 Single Collection Marketplace
- Repository: Crates.io
- Description: A marketplace focused on a single NFT collection. This crate simplifies the creation of marketplaces tailored for specific collections, making it easier to manage and showcase individual NFT projects.
- Use Case: Perfect for developers who want to create a dedicated marketplace for a single NFT collection, offering a streamlined, focused trading experience.
6. cw721-soulbound
- Repository: Crates.io
- Description: This crate introduces soulbound tokens—NFTs that are permanently tied to a specific wallet address. Soulbound tokens cannot be transferred, making them ideal for use cases like personal achievements, certifications, or digital identity.
- Use Case: Ideal for projects that require NFTs that cannot be traded or sold, such as awards or personal milestones.
7. CW721 Base (Soulbound)
- Repository: Crates.io
- Description: A base contract for implementing soulbound tokens within the CW721 framework. This crate provides a foundation for creating non-transferable NFTs, built on top of the standard CW721 contract.
- Use Case: Developers building NFT-based applications that require non-transferable tokens for identity, reputation, or achievements.
8. cw721-updatable
- Repository: Crates.io
- Description: A CW721 extension that allows for updating NFT metadata after the token has been minted. This functionality is useful in cases where the properties of an NFT need to evolve over time, such as in gaming or dynamic art.
- Use Case: Suitable for applications requiring NFTs with updatable attributes, such as evolving in-game characters or assets.
9. CW721 Base (Updatable)
- Repository: Crates.io
- Description: A base contract for implementing updatable NFTs. This crate extends the standard CW721 functionality to allow for changes in token metadata post-minting.
- Use Case: Ideal for developers who need to create NFTs with dynamic or evolving properties, such as in-game items or adaptive art.