# Overview of the Modules

### Overview of the Modules

Artinals is primarily composed of three interlinked modules:

1. **ART20 Module**:\
   This module focuses on creating and managing NFT collections and their tokens. It offers functionalities for:

   * **Minting** new NFTs and collections.
   * **Batch operations**, such as mass minting or mass metadata updates.
   * **Metadata updates**, allowing creators to modify the NFT’s name, description, image URL, and more.
   * **Deny list functionality**, enabling creators to disallow certain addresses from receiving tokens.
   * **Value sources**, supporting data fetched from external APIs or oracles for dynamic NFT properties.

   Essentially, ART20 defines the core NFT logic, data structures, and event emissions that form the backbone of the Artinals system.
2. **SALE Module**:\
   The SALE module introduces marketplace-like functionality. It lets you:

   * **Create NFT sales**: List a set of NFTs for sale at a specified price per token.
   * **Add more NFTs to an existing sale**: Dynamically manage inventory in ongoing sales.
   * **Purchase NFTs** directly using a specified currency (like SUI or another coin type).
   * **Withdraw currency** proceeds from sales.
   * **Open, close, or reopen a sale**, allowing flexible management of the selling window.

   By integrating with ART20, the SALE module uses existing NFT capabilities while adding a layer of marketplace logic.
3. **TRADE Module**:\
   The TRADE module aims to facilitate more complex trading scenarios, including:

   * **Liquidity pools** for NFTs and tokens, allowing users to trade NFTs in a decentralized, automated market-making environment.
   * **Adding and removing liquidity** from pools, receiving LP tokens to represent shares.
   * **Swapping NFTs for tokens and vice versa**, governed by price curves, fees, and price oracles.
   * **Pool management**, including emergency operations, pool fee updates, and dynamic price setting.
   * **Price oracle integration** to maintain a fair and stable price feed for NFTs.

   In combination with ART20 and SALE, the TRADE module provides advanced DeFi-like mechanics for NFT liquidity and price discovery.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.artinals.com/artinals-protocol/readme/overview-of-the-modules.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
