Skip to main content
Active Facet
...
Early Stage - Not Production Ready

Build the future of
Smart Contracts

A smart contract library for diamond-based systems. Build with an onchain standard set of facets.

Shared Storage Architecture

Facets and Modules Working Together

Both facets and modules access the same storage in your diamond. Your custom facets can extend Compose functionality without inheritance.

GameNFTFacet.sol
// Your custom facet uses the ERC721 module
import { ERC721Mod } from "compose/ERC721Mod.sol";

contract GameNFTFacet {
    function mintWithGameLogic(
        address player,
        uint256 tokenId
    ) external {
        // Your custom game logic
        require(
            playerHasEnoughPoints(player),
            "Not enough points"
        );

        // Use ERC721Mod - same storage
        ERC721Mod.mint(player, tokenId);

        // Standard ERC721Facet functions work seamlessly
        updatePlayerStats(player);
    }
}
MIT
Open Source
ERC-2535
Diamond Standard
17+
Contributors
Community
Built with Love

Ready to build with Compose?

Start creating modular, maintainable smart contracts with our comprehensive documentation.

Newsletter

Get notified about releases, feature announcements, and technical deep-dives on building smart contracts with Compose.

No spam. Unsubscribe anytime.