CLI
The CLI is a suite of commands that allows you to develop and deploy smart contracts that can utilize the SDK and the dashboard on your smart contracts. It includes commands that can:
- Deploy your smart contracts without the use of private keys
- Create web applications that can interact with your smart contracts
- Publish your smart contracts for others to use (coming soon)
Detect
As you're developing your contracts, you may want to implement Contract Extensions to add standard functionality to your contracts like NFT minting, querying, and more.
During your development, you can run the thirdweb detect
command to detect any extensions on your contracts for confirmation and to suggest additional related extensions.
npx thirdweb detect
Release
Creates an official release of your contract, along with:
- Author attribution
- Contract information
- Instructions on how to use and what it's for
- Versioning
- Release notes
Creating releases this way gives you a shareable URL to let others deploy your contracts in one click. It lets you manage released versions and get attribution for deployed contracts. Contract releases are registered on-chain (Polygon) and IPFS, for free (gasless).
Deploying released contracts give deployers access to automatic SDKs to integrate into their app and dashboards to manage and monitor the deployed contracts.
npx thirdweb release
Deploy
- Auto-detect any deployable contract in your project
- Compile your project
- Upload the ABI and bytecode to IPFS
- Generate a deploy link
Follow the link to the dashboard where you can connect a wallet (or a multi-sig like Gnosis) to deploy your code to blockchains from your browser-connected wallet. No copy/pasting of private keys or complex scripting is required!
npx thirdweb deploy
You can also deploy a contract that has been released by running:
# Deploy a released contract
npx thirdweb deploy --name doubledev.eth/ERC4907
Or one of our pre-built contracts by running:
# Deploy a pre-built contract
npx thirdweb deploy --name --nft-drop
Continuous Integration (Alpha)
Set up continuous integration for your contracts.
This adds a GitHub Action to deploy the contract on pull requests and pushes to Git branches.
npx thirdweb install-ci
Create
Create a new project with the language & framework of your choice and our SDKs pre-configured.
# Create a basic project with the language & framework of your choice
npx thirdweb create
You can also start with one of our template repositories by passing the --template
flag and the name of the repo.
# Create a project from a template repository
npx thirdweb create --template nft-drop