# Artinals Protocol

## Artinals Protocol

- [Introduction](https://docs.artinals.com/artinals-protocol/readme.md)
- [What is Artinals?](https://docs.artinals.com/artinals-protocol/readme/what-is-artinals.md): Smart Contract built on Sui using Move Programming Language
- [Overview of the Modules](https://docs.artinals.com/artinals-protocol/readme/overview-of-the-modules.md)
- [Key Concepts and Terminology](https://docs.artinals.com/artinals-protocol/readme/key-concepts-and-terminology.md)
- [Prerequisites](https://docs.artinals.com/artinals-protocol/getting-started/quickstart.md)
- [Cloning the Repository](https://docs.artinals.com/artinals-protocol/getting-started/quickstart-1.md)
- [Building and Testing the Modules](https://docs.artinals.com/artinals-protocol/getting-started/quickstart-2.md)
- [Overview and Capabilities](https://docs.artinals.com/artinals-protocol/art20/editor.md)
- [Data Structures](https://docs.artinals.com/artinals-protocol/art20/markdown.md)
- [NFT](https://docs.artinals.com/artinals-protocol/art20/markdown/nft.md)
- [CollectionCap](https://docs.artinals.com/artinals-protocol/art20/markdown/collectioncap.md)
- [UserBalance](https://docs.artinals.com/artinals-protocol/art20/markdown/userbalance.md)
- [TokenIdCounter](https://docs.artinals.com/artinals-protocol/art20/markdown/tokenidcounter.md)
- [Dual IDs](https://docs.artinals.com/artinals-protocol/art20/markdown/dual-ids.md)
- [Events](https://docs.artinals.com/artinals-protocol/art20/events.md)
- [NFTMintedEvent](https://docs.artinals.com/artinals-protocol/art20/events/nftmintedevent.md)
- [CollectionCreatedEvent](https://docs.artinals.com/artinals-protocol/art20/events/collectioncreatedevent.md)
- [MetadataUpdateEvent](https://docs.artinals.com/artinals-protocol/art20/events/metadataupdateevent.md)
- [BurnEvent](https://docs.artinals.com/artinals-protocol/art20/events/burnevent.md)
- [TransferEvent](https://docs.artinals.com/artinals-protocol/art20/events/transferevent.md)
- [Additional Events](https://docs.artinals.com/artinals-protocol/art20/events/additional-events.md)
- [Functions and Entry Points](https://docs.artinals.com/artinals-protocol/art20/functions-and-entry-points.md)
- [Initializing the Module](https://docs.artinals.com/artinals-protocol/art20/functions-and-entry-points/interactive-blocks.md)
- [Creating Collections](https://docs.artinals.com/artinals-protocol/art20/functions-and-entry-points/openapi.md)
- [Minting ART20 NFTs](https://docs.artinals.com/artinals-protocol/art20/functions-and-entry-points/openapi-1.md)
- [Updating Metadata](https://docs.artinals.com/artinals-protocol/art20/functions-and-entry-points/openapi-2.md)
- [Transfer and Burn Operations](https://docs.artinals.com/artinals-protocol/art20/functions-and-entry-points/openapi-3.md)
- [Batch Operations](https://docs.artinals.com/artinals-protocol/art20/functions-and-entry-points/openapi-4.md)
- [Deny List Mechanics and Authority](https://docs.artinals.com/artinals-protocol/art20/functions-and-entry-points/openapi-5.md)
- [Custom Transfers](https://docs.artinals.com/artinals-protocol/art20/functions-and-entry-points/custom-transfers.md)
- [Value Sources (API, Oracle)](https://docs.artinals.com/artinals-protocol/art20/openapi.md)
- [Best Practices & Examples](https://docs.artinals.com/artinals-protocol/art20/best-practices-and-examples.md)
- [Purpose and Functionality](https://docs.artinals.com/artinals-protocol/sale-module/purpose-and-functionality.md)
- [Interdependence](https://docs.artinals.com/artinals-protocol/sale-module/interdependence.md)
- [Price Index Module](https://docs.artinals.com/artinals-protocol/sale-module/price-index-module.md)
- [Liquidity Module](https://docs.artinals.com/artinals-protocol/sale-module/liquidity-module.md)
- [Data Structures](https://docs.artinals.com/artinals-protocol/sale-module/data-structures.md)
- [NFTSale](https://docs.artinals.com/artinals-protocol/sale-module/data-structures/nftsale.md)
- [NFTListing](https://docs.artinals.com/artinals-protocol/sale-module/data-structures/nftlisting.md)
- [Events](https://docs.artinals.com/artinals-protocol/events.md)
- [SaleCreated](https://docs.artinals.com/artinals-protocol/events/salecreated.md)
- [NFTPurchased](https://docs.artinals.com/artinals-protocol/events/nftpurchased.md)
- [PriceUpdateEvent](https://docs.artinals.com/artinals-protocol/events/priceupdateevent.md)
- [CurrencyWithdrawn](https://docs.artinals.com/artinals-protocol/events/currencywithdrawn.md)
- [DenyList & Related Events](https://docs.artinals.com/artinals-protocol/events/denylist-and-related-events.md)
- [PoolCreatedEvent](https://docs.artinals.com/artinals-protocol/events/poolcreatedevent.md)
- [OrderCanceled](https://docs.artinals.com/artinals-protocol/events/ordercanceled.md)
- [OrderExecuted](https://docs.artinals.com/artinals-protocol/events/orderexecuted.md)
- [Functions and Entry Points](https://docs.artinals.com/artinals-protocol/functions-and-entry-points.md)
- [Creating a Sale](https://docs.artinals.com/artinals-protocol/functions-and-entry-points/creating-a-sale.md)
- [Adding NFTs to a Sale](https://docs.artinals.com/artinals-protocol/functions-and-entry-points/adding-nfts-to-a-sale.md)
- [Purchasing NFTs from a Sale](https://docs.artinals.com/artinals-protocol/functions-and-entry-points/purchasing-nfts-from-a-sale.md)
- [Withdrawing Proceeds](https://docs.artinals.com/artinals-protocol/functions-and-entry-points/withdrawing-proceeds.md)
- [Managing Sale State](https://docs.artinals.com/artinals-protocol/functions-and-entry-points/managing-sale-state.md)
- [Core Trading Functionality](https://docs.artinals.com/artinals-protocol/functions-and-entry-points/core-trading-functionality.md)
- [Integrating with ART20](https://docs.artinals.com/artinals-protocol/integrating-with-art20.md)
- [Examples & Best Practices](https://docs.artinals.com/artinals-protocol/examples-and-best-practices.md)
- [Introduction](https://docs.artinals.com/artinals-protocol/market-module/introduction.md)
- [Testnet (Beta)](https://docs.artinals.com/artinals-protocol/market-module/testnet-beta.md)
- [Smart Contract Overview](https://docs.artinals.com/artinals-protocol/market-module/smart-contract-overview.md)
- [Data Structures](https://docs.artinals.com/artinals-protocol/market-module/data-structures.md)
- [Trade Ledger (TradeLedger)](https://docs.artinals.com/artinals-protocol/market-module/data-structures/trade-ledger-tradeledger.md)
- [Trade Offer (TradeOffer)](https://docs.artinals.com/artinals-protocol/market-module/data-structures/trade-offer-tradeoffer.md)
- [Buy Offer (BuyOffer)](https://docs.artinals.com/artinals-protocol/market-module/data-structures/buy-offer-buyoffer.md)
- [Ledger Registry (LedgerRegistry)](https://docs.artinals.com/artinals-protocol/market-module/data-structures/ledger-registry-ledgerregistry.md)
- [Event Structures](https://docs.artinals.com/artinals-protocol/market-module/event-structures.md)
- [Offer Created (OfferCreated)](https://docs.artinals.com/artinals-protocol/market-module/event-structures/offer-created-offercreated.md)
- [Offer Accepted (OfferAccepted)](https://docs.artinals.com/artinals-protocol/market-module/event-structures/offer-accepted-offeraccepted.md)
- [Buy Offer Created (BuyOfferCreated)](https://docs.artinals.com/artinals-protocol/market-module/event-structures/buy-offer-created-buyoffercreated.md)
- [Buy Offer Accepted (BuyOfferAccepted)](https://docs.artinals.com/artinals-protocol/market-module/event-structures/buy-offer-accepted-buyofferaccepted.md)
- [Batch Transactions](https://docs.artinals.com/artinals-protocol/market-module/event-structures/batch-transactions.md)
- [Event Emissions](https://docs.artinals.com/artinals-protocol/market-module/event-emissions.md)
- [Functions and Entry Points](https://docs.artinals.com/artinals-protocol/market-module/functions-and-entry-points.md)
- [Trade Ledger Management](https://docs.artinals.com/artinals-protocol/market-module/functions-and-entry-points/trade-ledger-management.md)
- [Register Ledger](https://docs.artinals.com/artinals-protocol/market-module/functions-and-entry-points/register-ledger.md)
- [Get Trade Ledger](https://docs.artinals.com/artinals-protocol/market-module/functions-and-entry-points/get-trade-ledger.md)
- [Create Sell Offer](https://docs.artinals.com/artinals-protocol/market-module/functions-and-entry-points/create-sell-offer.md)
- [Accept Sell Offer](https://docs.artinals.com/artinals-protocol/market-module/functions-and-entry-points/accept-sell-offer.md)
- [Cancel Sell Offer](https://docs.artinals.com/artinals-protocol/market-module/functions-and-entry-points/cancel-sell-offer.md)
- [Create Buy Offer](https://docs.artinals.com/artinals-protocol/market-module/functions-and-entry-points/create-buy-offer.md)
- [Accept Buy Offer](https://docs.artinals.com/artinals-protocol/market-module/functions-and-entry-points/accept-buy-offer.md)
- [Cancel Buy Offer](https://docs.artinals.com/artinals-protocol/market-module/functions-and-entry-points/cancel-buy-offer.md)
- [Batch Accept Sell Offers](https://docs.artinals.com/artinals-protocol/market-module/functions-and-entry-points/batch-accept-sell-offers.md)
- [Batch Accept Buy Offers](https://docs.artinals.com/artinals-protocol/market-module/functions-and-entry-points/batch-accept-buy-offers.md)
- [Security Mechanisms](https://docs.artinals.com/artinals-protocol/security-mechanisms.md)
- [Introduction](https://docs.artinals.com/artinals-protocol/trade-module/introduction.md)
- [Purpose and Ecosystem Role](https://docs.artinals.com/artinals-protocol/trade-module/purpose-and-ecosystem-role.md)
- [Data Structures](https://docs.artinals.com/artinals-protocol/trade-module/data-structures.md)
- [TradingPool](https://docs.artinals.com/artinals-protocol/trade-module/data-structures/tradingpool.md)
- [LiquidityPosition](https://docs.artinals.com/artinals-protocol/trade-module/data-structures/liquidityposition.md)
- [PriceOracle](https://docs.artinals.com/artinals-protocol/trade-module/data-structures/priceoracle.md)
- [CollectionPool](https://docs.artinals.com/artinals-protocol/trade-module/data-structures/collectionpool.md)
- [Events](https://docs.artinals.com/artinals-protocol/trade-module/events.md)
- [PoolCreated](https://docs.artinals.com/artinals-protocol/trade-module/events/poolcreated.md)
- [LiquidityAdded](https://docs.artinals.com/artinals-protocol/trade-module/events/liquidityadded.md)
- [LiquidityRemoved](https://docs.artinals.com/artinals-protocol/trade-module/events/liquidityremoved.md)
- [TradeExecuted](https://docs.artinals.com/artinals-protocol/trade-module/events/tradeexecuted.md)
- [PoolStatusChanged](https://docs.artinals.com/artinals-protocol/trade-module/events/poolstatuschanged.md)
- [PoolFeesUpdated](https://docs.artinals.com/artinals-protocol/trade-module/events/poolfeesupdated.md)
- [Functions and Entry Points](https://docs.artinals.com/artinals-protocol/trade-module/functions-and-entry-points.md)
- [Creating and Managing Liquidity Pools](https://docs.artinals.com/artinals-protocol/trade-module/functions-and-entry-points/creating-and-managing-liquidity-pools.md)
- [Adding/Removing Liquidity](https://docs.artinals.com/artinals-protocol/trade-module/functions-and-entry-points/adding-removing-liquidity.md)
- [Swapping NFTs and Tokens](https://docs.artinals.com/artinals-protocol/trade-module/functions-and-entry-points/swapping-nfts-and-tokens.md)
- [Fee Mechanics and Distribution](https://docs.artinals.com/artinals-protocol/trade-module/functions-and-entry-points/fee-mechanics-and-distribution.md)
- [Emergency Operations and Recovery](https://docs.artinals.com/artinals-protocol/trade-module/functions-and-entry-points/emergency-operations-and-recovery.md)
- [Working with Price Oracles](https://docs.artinals.com/artinals-protocol/working-with-price-oracles.md)
- [Metrics and Statistics (24h Volumes, TWAP, Price Impact)](https://docs.artinals.com/artinals-protocol/metrics-and-statistics-24h-volumes-twap-price-impact.md)
- [Integration with SALE and ART20](https://docs.artinals.com/artinals-protocol/integration-with-sale-and-art20.md)
- [Typical User Journeys](https://docs.artinals.com/artinals-protocol/integration-and-workflows/typical-user-journeys.md)
- [Creating a Collection and Minting Tokens (ART20)](https://docs.artinals.com/artinals-protocol/integration-and-workflows/typical-user-journeys/creating-a-collection-and-minting-tokens-art20.md)
- [Listing and Selling NFTs (SALE)](https://docs.artinals.com/artinals-protocol/integration-and-workflows/typical-user-journeys/listing-and-selling-nfts-sale.md)
- [Providing Liquidity and Trading NFTs (TRADE)](https://docs.artinals.com/artinals-protocol/integration-and-workflows/typical-user-journeys/providing-liquidity-and-trading-nfts-trade.md)
- [Example Scripts and Transactions](https://docs.artinals.com/artinals-protocol/integration-and-workflows/example-scripts-and-transactions.md)
- [Interactions Between Modules](https://docs.artinals.com/artinals-protocol/integration-and-workflows/interactions-between-modules.md)
- [Introduction](https://docs.artinals.com/artinals-protocol/security-permissions-and-deny-lists/introduction.md)
- [Role of Deny List in ART20](https://docs.artinals.com/artinals-protocol/security-permissions-and-deny-lists/role-of-deny-list-in-art20.md)
- [Creator vs. Owner Permissions](https://docs.artinals.com/artinals-protocol/security-permissions-and-deny-lists/creator-vs.-owner-permissions.md)
- [Fee Distribution and Authority](https://docs.artinals.com/artinals-protocol/security-permissions-and-deny-lists/fee-distribution-and-authority.md)
- [Best Practices for Secure Deployment](https://docs.artinals.com/artinals-protocol/security-permissions-and-deny-lists/best-practices-for-secure-deployment.md)
- [Running Unit Tests](https://docs.artinals.com/artinals-protocol/testing-and-troubleshooting/running-unit-tests.md)
- [Common Issues and Solutions](https://docs.artinals.com/artinals-protocol/testing-and-troubleshooting/common-issues-and-solutions.md)
- [Debugging and Emitting Debug Events](https://docs.artinals.com/artinals-protocol/testing-and-troubleshooting/debugging-and-emitting-debug-events.md)
- [Value Sources (API Endpoints and Oracle Addresses)](https://docs.artinals.com/artinals-protocol/advanced-topics/value-sources-api-endpoints-and-oracle-addresses.md)
- [Batch Update Operations](https://docs.artinals.com/artinals-protocol/advanced-topics/batch-update-operations.md)
- [Customizing Parameters (Fees, Supply, Price Ranges)](https://docs.artinals.com/artinals-protocol/advanced-topics/customizing-parameters-fees-supply-price-ranges.md)
- [Extensibility and Future Integrations](https://docs.artinals.com/artinals-protocol/advanced-topics/extensibility-and-future-integrations.md)
- [Move Language and Sui Concepts](https://docs.artinals.com/artinals-protocol/appendices/move-language-and-sui-concepts.md)
- [Glossary of Terms](https://docs.artinals.com/artinals-protocol/appendices/glossary-of-terms.md)
- [Code Style and Conventions](https://docs.artinals.com/artinals-protocol/appendices/code-style-and-conventions.md)
- [Overview](https://docs.artinals.com/artinals-protocol/building-on-top-of-the-artinals-contract/overview.md)
- [Package ID](https://docs.artinals.com/artinals-protocol/building-on-top-of-the-artinals-contract/package-id.md)
- [Import Modules](https://docs.artinals.com/artinals-protocol/building-on-top-of-the-artinals-contract/import-modules.md)
- [Commom Integration Patterns](https://docs.artinals.com/artinals-protocol/building-on-top-of-the-artinals-contract/commom-integration-patterns.md)
- [Best Practices](https://docs.artinals.com/artinals-protocol/building-on-top-of-the-artinals-contract/best-practices.md)
- [Common Errors and Solutions](https://docs.artinals.com/artinals-protocol/building-on-top-of-the-artinals-contract/common-errors-and-solutions.md)
