Skip to content

Commit

Permalink
update docs for vanity minting
Browse files Browse the repository at this point in the history
  • Loading branch information
samuelvanderwaal committed Dec 24, 2023
1 parent 0626d36 commit bafc99e
Show file tree
Hide file tree
Showing 6 changed files with 124 additions and 59 deletions.
11 changes: 11 additions & 0 deletions docs-src/src/create.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,17 @@ Use the `--initial-suply` option to mint the specified amount directly to your k
metaboss create fungible -d 3 -m crab.json --initial-supply 10.1
```

#### Vanity Mints

You can specify a vanity mint address by using the `--mint-path` option to specify a path to a keypair on your file system.
It will use this for the mint account instead of creating a new one.

```bash
metaboss create fungible -d <decimals> -m <metadata_file> --mint-path <path_to_keypair>
```

```bash
### Metadata
Decorate an existing SPL token mint with metadata.
Expand Down
16 changes: 14 additions & 2 deletions docs-src/src/mint.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,11 @@ If `receiver` is set, the NFT will be minted directly to the receiver's address,

Use the `--sign` option to sign the metadata with the keypair immediately after minting.

#### Vanity Mints

You can specify a vanity mint address by using the `--mint-path` option to specify a path to a keypair on your file system.
It will use this for the mint account instead of creating a new one.

#### Editions

To mint a NFT with the ability to print editions from it use the `--max-editions <max-editions>` option. This defaults to `0` meaning no editions are allowed. Setting it to a positive integer means you can print up to that many editions. Setting to a value of `-1` means unlimited editions. Because of how the CLI interprets the `-` symbol to set max editions to infinite you should use the `=` sign for the `--max-editions` option: `metaboss mint one -a <master_account> --max-editions='-1'`.
Expand Down Expand Up @@ -98,12 +103,15 @@ OPTIONS:
Amount of tokens to mint, for NonFungible types this must be 1 [default: 1]
-d, --asset-data <asset-data> Asset data
--decimals <decimals> Mint decimals for fungible tokens
--decimals <decimals> Mint decimals for fungible tokens [default: 0]
-k, --keypair <keypair> Path to the update_authority keypair file
-l, --log-level <log-level> Log level [default: off]
-s, --max-print-edition-supply <max-print-edition-supply>
Max supply of print editions. Only applies to NonFungible types. 0 for no prints, n for n prints,
'unlimited' for unlimited prints
-m, --mint-path <mint-path>
Path to mint keypair file, if minting from existing keypair
-R, --receiver <receiver> Receiving address, if different from update authority
-r, --rpc <rpc>
RPC endpoint url to override using the Solana config or the hard-coded default
Expand Down Expand Up @@ -141,7 +149,6 @@ You need an asset json file of this format:

Substitute appropriate values for each field. The creator can only be set as verified if it is the same keypair as the one used to mint the asset, otherwise leave it as `false`.


```bash
metaboss mint asset -d <asset_json_file> -k <keypair> -R <receiver> -s <print_supply>
```
Expand All @@ -159,3 +166,8 @@ Leave off the `--receiver` option to mint to your keypair.
All non-fungible type assets: currently `NonFungible` and `ProgrammableNonFungible`, require the `print-supply` option to be specified to set the maximum number of print editions that can be minted from the asset. For most PFP, 1/1, style NFTs, this should be set to `0` to prevent any editions being minted. Other options are: `n` for a limited number of `n` editions (e.g. `10`), or `unlimited` to allow unlimited editions to be minted.

Fungible types such as `Fungible` and `FungibleAsset` should leave this value off as it has no meaning for them and the `mint asset` command will fail if that is specified for a fungible type.

#### Vanity Mints

You can specify a vanity mint address by using the `--mint-path` option to specify a path to a keypair on your file system.
It will use this for the mint account instead of creating a new one.
26 changes: 19 additions & 7 deletions docs/create.html
Original file line number Diff line number Diff line change
Expand Up @@ -193,13 +193,25 @@ <h4 id="usage"><a class="header" href="#usage">Usage</a></h4>
```bash
metaboss create fungible -d 3 -m crab.json --initial-supply 10.1
</code></pre>
<h3 id="metadata"><a class="header" href="#metadata">Metadata</a></h3>
<p>Decorate an existing SPL token mint with metadata.</p>
<h4 id="usage-1"><a class="header" href="#usage-1">Usage</a></h4>
<p>Specify the token decimals and path to a metadata file that contains the <code>name</code>, <code>symbol</code> and <code>uri</code> fields in a JSON format.</p>
<p>E.g. (Note the snake_case field name):</p>
<p>// crab.json</p>
<pre><code class="language-json">{
<h4 id="vanity-mints"><a class="header" href="#vanity-mints">Vanity Mints</a></h4>
<p>You can specify a vanity mint address by using the <code>--mint-path</code> option to specify a path to a keypair on your file system.
It will use this for the mint account instead of creating a new one.</p>
<pre><code class="language-bash">metaboss create fungible -d &lt;decimals&gt; -m &lt;metadata_file&gt; --mint-path &lt;path_to_keypair&gt;
</code></pre>
<pre><code class="language-bash">
### Metadata

Decorate an existing SPL token mint with metadata.

#### Usage

Specify the token decimals and path to a metadata file that contains the `name`, `symbol` and `uri` fields in a JSON format.

E.g. (Note the snake_case field name):

// crab.json
```json
{
&quot;name&quot;: &quot;Crabbie&quot;,
&quot;symbol&quot;: &quot;CRAB&quot;,
&quot;uri&quot;: &quot;https://arweave.net/KZDlKw8aCG4kfZtj9Qmh8tmYpH4Q287P_jmUtkl2s-k&quot;
Expand Down
11 changes: 10 additions & 1 deletion docs/mint.html
Original file line number Diff line number Diff line change
Expand Up @@ -200,6 +200,9 @@ <h4 id="usage"><a class="header" href="#usage">Usage</a></h4>
<p>The --external-metadata-uri option takes a URI to an external metadata file such as an Arweave link pointing to a JSON file.</p>
<p>If <code>receiver</code> is set, the NFT will be minted directly to the receiver's address, otherwise it is minted to <code>keypair</code>. Observant users may note that with a simple bash script this allows airdrops to be deployed with Metaboss.</p>
<p>Use the <code>--sign</code> option to sign the metadata with the keypair immediately after minting.</p>
<h4 id="vanity-mints"><a class="header" href="#vanity-mints">Vanity Mints</a></h4>
<p>You can specify a vanity mint address by using the <code>--mint-path</code> option to specify a path to a keypair on your file system.
It will use this for the mint account instead of creating a new one.</p>
<h4 id="editions"><a class="header" href="#editions">Editions</a></h4>
<p>To mint a NFT with the ability to print editions from it use the <code>--max-editions &lt;max-editions&gt;</code> option. This defaults to <code>0</code> meaning no editions are allowed. Setting it to a positive integer means you can print up to that many editions. Setting to a value of <code>-1</code> means unlimited editions. Because of how the CLI interprets the <code>-</code> symbol to set max editions to infinite you should use the <code>=</code> sign for the <code>--max-editions</code> option: <code>metaboss mint one -a &lt;master_account&gt; --max-editions='-1'</code>.</p>
<p>To mint editions from a master NFT use the<code>metaboss mint editions</code> command to either mint the next <code>n</code> editions sequentially using <code>--next-editions &lt;int&gt;</code> or mint specific edition numbers using <code>--specific-editions &lt;int&gt; &lt;int&gt; &lt;int&gt;</code> with a list of integer edition numbers to mint.</p>
Expand Down Expand Up @@ -231,12 +234,15 @@ <h3 id="mint-asset"><a class="header" href="#mint-asset">Mint Asset</a></h3>
Amount of tokens to mint, for NonFungible types this must be 1 [default: 1]

-d, --asset-data &lt;asset-data&gt; Asset data
--decimals &lt;decimals&gt; Mint decimals for fungible tokens
--decimals &lt;decimals&gt; Mint decimals for fungible tokens [default: 0]
-k, --keypair &lt;keypair&gt; Path to the update_authority keypair file
-l, --log-level &lt;log-level&gt; Log level [default: off]
-s, --max-print-edition-supply &lt;max-print-edition-supply&gt;
Max supply of print editions. Only applies to NonFungible types. 0 for no prints, n for n prints,
'unlimited' for unlimited prints
-m, --mint-path &lt;mint-path&gt;
Path to mint keypair file, if minting from existing keypair

-R, --receiver &lt;receiver&gt; Receiving address, if different from update authority
-r, --rpc &lt;rpc&gt;
RPC endpoint url to override using the Solana config or the hard-coded default
Expand Down Expand Up @@ -277,6 +283,9 @@ <h4 id="usage-2"><a class="header" href="#usage-2">Usage</a></h4>
<p><strong>Print Supply</strong></p>
<p>All non-fungible type assets: currently <code>NonFungible</code> and <code>ProgrammableNonFungible</code>, require the <code>print-supply</code> option to be specified to set the maximum number of print editions that can be minted from the asset. For most PFP, 1/1, style NFTs, this should be set to <code>0</code> to prevent any editions being minted. Other options are: <code>n</code> for a limited number of <code>n</code> editions (e.g. <code>10</code>), or <code>unlimited</code> to allow unlimited editions to be minted.</p>
<p>Fungible types such as <code>Fungible</code> and <code>FungibleAsset</code> should leave this value off as it has no meaning for them and the <code>mint asset</code> command will fail if that is specified for a fungible type.</p>
<h4 id="vanity-mints-1"><a class="header" href="#vanity-mints-1">Vanity Mints</a></h4>
<p>You can specify a vanity mint address by using the <code>--mint-path</code> option to specify a path to a keypair on your file system.
It will use this for the mint account instead of creating a new one.</p>

</main>

Expand Down
Loading

0 comments on commit bafc99e

Please sign in to comment.