Vertix is a decentralized digital asset marketplace that enables secure, transparent, and trustless trading of NFTs, gaming assets, social media accounts, websites, and other digital assets through an escrow system across Polygon and Base networks. It aims to become the leading decentralized marketplace for digital assets, providing a secure, accessible, and comprehensive platform that bridges the gap between Web2 and Web3, enabling true ownership and monetization of digital identities across gaming, social media, and the broader digital economy.
-
NFT Trading: Mint, trade, borrow, stake, and sell creator-branded NFTs and in-game items.
-
Escrow System: Secure escrow-like smart contracts for safe manual transfers of digital assets.
-
Verification: Ensures authenticity of digital assets, including accounts, domains, apps, etc.
-
Hybrid Architecture: Leverages Polygon for low-cost, high-speed transactions and Base for scalability.
-
Decentralized Marketplace: Trustless trading for gamers, creators, and digital entrepreneurs.
-
Foundry: Ensure you have (Foundry) installed.
-
Node.js: Required for dependency management.
-
Polygon & Base Nodes: Access to Polygon and Base RPC endpoints for deployment and testing.
Contributions are made to our repos via Issues and Pull Requests (PRs). First search existing Issues and PRs before creating your own.
In general, we follow the "fork-and-pull" Git workflow
- Fork the repository to your own Github account
- Clone the project to your machine
- Create a branch locally with a succinct but descriptive name
- Commit changes to the branch following the standard convention commit spec
- Following any formatting and testing guidelines specific to this repo
- Push changes to your fork
- Open a PR in our repository
- Clone the repository:
git clone git@github.com:Vertix-platform/contract.git
cd contracts
- Install dependencies:
make install
Compile Contracts
forge build --sizes
forge test
Deploy to Polygon or Base:
make deploy ARGS="--network polygon-testnet"
or
make deploy ARGS="--network base-testnet"
or
Run you can run anvil for local testing
make deploy ARGS="--network anvil"
Use Foundry’s cast to interact with deployed contracts. Ensure you have anvil running:
cast call <contract-address> "<function-signature>" --rpc-url $POLYGON_RPC_URL
- MarketplaceCore.sol: Core marketplace functionality for listing, buying, and managing NFT and non-NFT assets
- MarketplaceStorage.sol: Storage contract for marketplace listings and data management
- MarketplaceFees.sol: Fee calculation and distribution system for marketplace transactions
- MarketplaceAuctions.sol: Auction functionality for marketplace assets
- MarketplaceProxy.sol: Proxy contract for marketplace implementation upgrades
- VertixNFT.sol: ERC721 NFT contract with social media integration and verification
- VertixEscrow.sol: Secure escrow system for manual asset transfers and dispute resolution
- VertixGovernance.sol: Governance contract for platform management and configuration
- CrossChainBridge.sol: Bridge contract for cross-chain asset transfers using LayerZero
- CrossChainRegistry.sol: Registry for managing cross-chain configurations and validations
- VertixUtils.sol: Utility library for common functions and data structures
- Interfaces/: Contract interfaces for external integrations
- ICrossChainBridge.sol: Cross-chain bridge interface
- IVertixNFT.sol: NFT contract interface
- IVertixEscrow.sol: Escrow contract interface
- IVertixGovernance.sol: Governance contract interface
Run test per function:
forge test --mt <function name>
Run test per contract:
forge test --mc <contract name>
This project is licensed under the MIT License. See the LICENSE (./LICENSE) file for details.
For inquiries, reach out via Email or X.