thirdweb
thirdweb is a complete web3 development framework that provides everything you need to connect your apps and games to decentralized networks.
Create a smart contract​
To create a new smart contract using thirdweb CLI, follow these steps:
-
In your CLI run the following command:
npx thirdweb create contract -
Input your preferences for the command line prompts:
- Give your project a name
- Choose your preferred framework: Hardhat or Foundry
- Name your smart contract
- Choose the type of base contract: Empty, ERC-20, ERC-721, or ERC-1155
- Add any desired extensions
-
Once created, navigate to your project’s directory and open in your preferred code editor.
-
If you open the
contractsfolder, you will find your smart contract; this is your smart contract written in Solidity.The following is code for an
ERC721Basecontract without specified extensions. It implements all of the logic inside the ERC721Base.sol contract; which implements the ERC-721A standard.// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
import "@thirdweb-dev/contracts/base/ERC721Base.sol";
contract Contract is ERC721Base {
constructor(
string memory _name,
string memory _symbol,
address _royaltyRecipient,
uint128 _royaltyBps
) ERC721Base(_name, _symbol, _royaltyRecipient, _royaltyBps) {}
}This contract inherits the functionality of
ERC721Basethrough the following steps:- Importing the
ERC721Basecontract - Inheriting the contract by declaring that our contract is an
ERC721Basecontract - Implementing any required methods, such as the constructor.
- Importing the
-
After modifying your contract with your desired custom logic, you may deploy it to the Linea testnet using
deploy.
Alternatively, you can deploy a prebuilt contract for NFTs, tokens, or marketplace directly from the thirdweb Explore page:
- Navigate to the thirdweb Explore page: https://thirdweb.com/explore

- Choose the type of contract you want to deploy from the available options: NFTs, tokens, marketplace, and more.
- Follow the on-screen prompts to configure and deploy your contract.
For more information on different contracts available on Explore, check out thirdweb’s documentation.
Deploy a smart contract​
Deploy allows you to deploy a smart contract to any EVM-compatible network without configuring RPC URLs, exposing your private keys, writing scripts, and other additional setup such as verifying your contract.
-
To deploy your smart contract using
deploy, navigate to the root directory of your project and execute the following command:npx thirdweb deployExecuting this command will trigger the following actions:
- Compiling all the contracts in the current directory.
- Providing the option to select which contract(s) you wish to deploy.
- Uploading your contract source code (ABI) to IPFS.
-
When this process is completed, a dashboard interface will open, where you will need to finish filling out the parameters:
_name: contract name_symbol: symbol or "ticker"_royaltyRecipient: wallet address to receive royalties from secondary sales_royaltyBps: basis points (bps) that will be given to the royalty recipient for each secondary sale, e.g. 500 = 5%
-
Select Linea testnet as the network
-
Manage additional settings on your contract’s dashboard as needed, such as uploading NFTs, configuring permissions, and more.
For additional information on
deploy, please reference thirdweb’s documentation.
If you have any further questions or encounter any issues during the process, please reach out to thirdweb support.