> For the complete documentation index, see [llms.txt](https://base-20-1.gitbook.io/base-20/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://base-20-1.gitbook.io/base-20/base-20.md).

# Base-20

Base-20

Base-20 is a fully community-driven experimental standard. Take part in the experiment at your own risk.There are several Base-20 tokens appearing in Basecriptions like $Base, but no one has defined the Base-20 token standard in basescan. Instead, different people deployed and minted those tokens, and other people writed indexers of Base-20 tokens. So far, the usual community indexers of Base-20 tokens are consistent and work properly. So this doc is written to describe the community-driven experimental Base-20 token standard in basescan simply.

#### 1. Introducing Basecriptions <a href="#id-1.-introducing-ethscriptions" id="id-1.-introducing-ethscriptions"></a>

basescan are a new way of creating and sharing digital artifacts on basescan using transaction calldata. You can learn about basescan with following resources:Offical website: [​](https://basescan.org/)<https://basescan.org/>​

#### 2. Concept of Base-20 <a href="#id-2.-concept-of-erc-20" id="id-2.-concept-of-erc-20"></a>

* Deploy new Base-20 tokens with **deploy** events
* Mint Base-20 tokens with **mint** events
* Transfer Base-20 tokens with **transfer** events

#### 3. Operations <a href="#id-3.-operations" id="id-3.-operations"></a>

#### 3.1 Operation: Deploy <a href="#id-3.1-operation-deploy" id="id-3.1-operation-deploy"></a>

The deploy operation will deploy a Base-20 token.

| Name       | Key  | Requried | Description                                             |
| ---------- | ---- | -------- | ------------------------------------------------------- |
| Protocol   | p    | yes      | helps other systems identify and process Base-20 events |
| Operation  | op   | yes      | type of event (Deploy, Mint, Transfer)                  |
| Ticker     | tick | yes      | the case insensitive identifier of Base-20              |
| Max supply | max  | yes      | set max supply of the Base-20                           |
| Mint limit | lim  | yes      | set max amount that can be minted per basecription      |

#### Deploy Example: <a href="#deploy-example" id="deploy-example"></a>

**line 3.1.1:**

data:,{"p":"base-20","op":"deploy","tick":"base","max":"21000000","lim":"1000"}

Line 3.1.1 will deploy a base-20 token $base with max supply of 21,000,000 and limit 1000 per mint.**line 3.1.2:**

data:,{"p":"base-20","op":"deploy","tick":"TICKER\_NAME","max":"MAX\_SUPPLY","lim":"MINT\_LIMIT"}Line 3.1.2 will deploy a base-20 token $**`TICKER_NAME`** with max supply of **`MAX_SUPPLY`** and limit **`MINT_LIMIT`** per mint.To deploy a specific base-20 token, just copy line 3.1.2 and replace **`TICKER_NAME`**, **`MAX_SUPPLY`** and **`MINT_LIMIT`**&#x77;ith real values.

#### 3.2 Operation: Mint <a href="#id-3.2-operation-mint" id="id-3.2-operation-mint"></a>

The mint operation will mint base-20 tokens if the base-20 token is deployed.

| Name           | Key  | Requried | Description                                                              |
| -------------- | ---- | -------- | ------------------------------------------------------------------------ |
| Protocol       | p    | yes      | helps other systems identify and process base-20 events                  |
| Operation      | op   | yes      | type of event (Deploy, Mint, Transfer)                                   |
| Ticker         | tick | yes      | the case insensitive identifier of base-20                               |
| Identifier     | id   | yes      | the unique identifier of the base-20 basecription                        |
| Amount to mint | amt  | yes      | state the amount of the base-20 to mint, less than "lim" above if stated |

### Mint Example:

**line 3.2.1:**

```
data:,{"p":"base-20","op":"mint","tick":"base","id":"1","amt":"1000"}
```

Line 3.2.1 will mint 1000 BASE-20 tokens $base and the unique erc-20 basecription identifier is "1".

**line 3.2.2:**

```
data:,{"p":"base-20","op":"mint","tick":"TICKER_NAME","id":"IDENTIFIER","amt":"MINT_AMOUNT"}
```

Line 3.2.2 will mint **`MINT_AMOUNT`** BASE-20 tokens $**`TICKER_NAME`** and the unique base-20 basecription identifier is **`IDENTIFIER`**.

To mint specific BASE-20 tokens, just copy line 3.2.2 and replace **`TICKER_NAME`**, **`IDENTIFIER`** and **`MINT_AMOUNT`** with real values.

### 3.3 Operation: Transfer

Currently, the community is using the transfer function of basecriptions to transfer base-20. The transfer operation remains to be developed.
