paint-brush
How to Deploy Smart Contracts on Rootstock in 5 Minutes with Thirdwebby@ileolami
167 reads

How to Deploy Smart Contracts on Rootstock in 5 Minutes with Thirdweb

by IleolamiDecember 1st, 2024
Read on Terminal Reader
Read this story w/o Javascript
tldt arrow

Too Long; Didn't Read

Thirdweb is a full-stack and open-source Web3 development platform. It enables developers to build, deploy, and manage scalable dApps on Rootstock (RSK) It offers tools like an SDK for easy integration of wallets and smart contracts into dApps.
featured image - How to Deploy Smart Contracts on Rootstock in 5 Minutes with Thirdweb
Ileolami HackerNoon profile picture


Thirdweb is one of the platforms that Rootstock supports to enable smooth development and scalable projects. It supports project development and provides tools like an SDK for easy integration and interaction of dApps on Rootstock.


Thirdweb on Rootstock

So, if you're someone who struggles with writing or finding deployment scripts, you'll learn about what Thirdweb is, how to set up your project's Client ID and secret key, and how to deploy your smart contract on Rootstock using the Thirdweb CLI in just 5 minutes.

What is Thirdweb?

Thirdweb is a full-stack and open-source Web3 development platform that enables developers to build, deploy, and manage scalable dApps on Rootstock (RSK). It offers tools like:


  1. SDKs: such as ConnectWallet and functions that facilitate the integration of wallets and smart contracts into your dApps.

  2. Dashboard: A user-friendly interface that allows developers to manage their projects, monitor smart contract interactions, and view analytics.

  3. CLI: A command-line interface that provides developers with the ability to deploy and manage smart contracts directly from their terminal.

  4. Automatic Verified Contract: When you deploy your contract using Thirdweb, it gets verified automatically. This means you don't have to worry about verifying your smart contract after deployment.

    For more information visit thirdweb’s site or documentation.

Prerequisites

  1. Must have signed up on Thirdweb
  2. Knowledge of Solidity and Javascript(including it’s frameworks of your choice)
  3. Found your wallet with RBTC(faucet)
  4. Ensure your wallet is connected to Rootstock Testnet


Setting up Your project’s Client ID and Secret key

Before you can deploy your smart contract, you will need a Client ID and Secret key

  1. Go to dashboard

  2. Click on Add New

  3. Click on Project

  4. Enter your project details, you can authorize specific domains including the local server or allow all domains.

    To allow all domains, click on “Allow all domains”

  5. Click on “Create”

  6. Copy your Client ID and Secret Key

It's very important to keep your secret key because you won't be able to access it again, unlike the client ID.

  1. You will see your new project when you’re being routed back to your dashboard.

Congratulations, you’ve successfully created a client ID and Secret key for your project 🎉.

Creating your contract

  1. Create a new folder

  2. Open the folder in your terminal and run the following command:

    npx thirdweb create
    
  3. Select “Contract” using the Arrow function

  4. Enter the name of your Contract folder

  5. Select the deployment framework of your choice

  6. Enter the name of your contract

  7. Select any type of contract or empty contract

    What is happening here is that thirdweb already have some contract templates you can work with e.g for Token, NFTs or Novel token

    Once you press enter, some packages will install which may take a longer time to install or less.

    Upon successful installation, you will see something like this ⬇️

Deploying the Smart contract

  1. Open the project in your code Editor and navigate to the project folder

  2. Run the following command:

    npx thirdweb -k {secret key}
    
  3. Your contract will compile automatically like this:

  4. You will see a link to deploy your contract, click on it

    Ensure your wallet is connected to Rootstock Testnet.

  5. Fill in the details of your contract and click on “Deploy”

    To import the contract to your dashboard, click on “Import so I can find it in the list of my contracts”

  6. After a successful deployment, you will see your deploy status. Click “View Contract”

  1. You will see your contact details including the contract address

Congratulations, you have successfully deployed your smart contract on Rootstock using thirdweb

Bonus

You can get some code snippets for interacting with the smart contract.

  1. On the side nav bar, click on “Code Snippets”

  2. You see how to install the SDK and initialize the SDK in your project including Rootstock chain ID(31)

  3. Scroll down to see all the functions and code snippets js and its frameworks

Conclusion

Using thirdweb is the easiest and most efficient way to deploy your smart contract on Rootstock especially if you are a beginner in the ecosystem. Following the steps, developers can easily set up their project’s Client ID and Secret key, create and deploy smart contracts, and even access code snippets for further interaction. This streamlined approach enhances productivity and empowers developers to focus on building innovative solutions on the Rootstock platform.