Skip to main content
The dapp-store CLI publishes new app versions to the Solana dApp Store through the Publisher Portal. Point it at an APK (local file or URL), and the portal handles the rest — matching the package name to your existing app, creating the release, and submitting the on-chain transaction.

Prerequisites

Before using the CLI, ensure you have:
  • An app already created in the Publisher Portal with its App NFT minted.
  • A release-ready APK signed with your release key.
  • A signer keypair file (Solana CLI keypair).
  • A portal API key (see Getting an API key).

Installation

npm install -g @solana-mobile/dapp-store-cli

Getting an API key

Generate an API key from the Publisher Portal dashboard: https://publish.solanamobile.com/dashboard/settings/api-keys Provide the key to the CLI via the DAPP_STORE_API_KEY environment variable or through stdin:
# Set as environment variable
export DAPP_STORE_API_KEY=<your-api-key>

# Or pipe from stdin
printf '%s' "$DAPP_STORE_API_KEY" | dapp-store ...

Usage

Publish a version by providing an APK and a “what’s new” message:
# From a local APK file
dapp-store --apk-file ./your_apk_name.apk --whats-new "Bug fixes and performance improvements"

# From a remote APK URL
dapp-store --apk-url https://example.com/your_apk_name.apk --whats-new "Bug fixes and performance improvements"
The CLI expects a signer keypair and portal API key to be available.

App identification

You do not need to specify the app you are publishing. The portal reads the Android package name (e.g. com.example.myapp) from the APK and matches it to the correct app under your publisher account.

CI/CD Integration

The CLI is designed for use in automated pipelines. Set DAPP_STORE_API_KEY as a secret in your CI environment and provide the signer keypair file:
export DAPP_STORE_API_KEY=${{ secrets.DAPP_STORE_API_KEY }}
dapp-store --apk-file ./app/build/outputs/apk/release/app-release.apk --whats-new "Release v1.2.0"
Last modified on April 1, 2026