All pages

IPFS (Kubo), Foundry and Base

Mint pins card media to IPFS, signs with a Foundry keystore, and publishes on Base. It defaults to the Base Sepolia testnet.

Used by

PackageWhat forReads
argus-mint (opens in new tab)

Pinning through the Kubo RPC (compose runs Kubo on loopback :5001).

ARGUS_MINT_IPFS_API

argus-mint (opens in new tab)

Chain and signing: network, RPC and a Foundry keystore account.

ARGUS_MINT_NETWORK, ARGUS_MINT_RPC_URL, ARGUS_MINT_ACCOUNT, ARGUS_MINT_KEYSTORE_DIR, ARGUS_MINT_KEYSTORE_PASSWORD_FILE

argus-assay (opens in new tab)

Through argus-mint. Its mock replaces all of this.

—

Official guides

Minimal setup

  1. IPFS: mint's compose runs ipfs/kubo on loopback :5001. For your own node, set ARGUS_MINT_IPFS_API to its RPC origin. Keep the RPC port off public networks, because it has admin rights over the node.
  2. Foundry: install it with foundryup, then create a keystore account with cast wallet import. Mint signs with ARGUS_MINT_ACCOUNT from ARGUS_MINT_KEYSTORE_DIR (Foundry's own keystore folder by default). The password is read from ARGUS_MINT_KEYSTORE_PASSWORD_FILE.
  3. Base: ARGUS_MINT_NETWORK defaults to base-sepolia, the testnet. ARGUS_MINT_RPC_URL overrides the network's public RPC. Deploying the contract uses BASE_SEPOLIA_RPC_URL or BASE_RPC_URL.

Assay's mock needs none of this.