wtf is thirdweb & how to use it
thirdweb overview simplified for those of you who don't know wtf it is
thirdweb for dummies
This article is for those of you who are interested in building in web3, but don't know how to approach it...also perfect for non-tech people who are interested in how web3 apps work.
thirdweb, in simple words: what does it actually do?
thirdweb is just a platform that helps you put web3 functionality into your apps.
What does that even mean?
It basically means that thirdweb provides different tools for creators, founders, entrepreneurs etc. so that they can easily build, deploy, and manage a web3 app.
thirdweb allows us to build apps, such as NFT marketplaces through their pre-built software development kits (SDKs).
This means that you don't need to learn a whole new language or worry too much about the blockchain in order to build in web3. Instead, you, as a developer, can focus on the important stuff: utility and usability.
thirdweb's main features
Contracts
thirdweb allows us to build contracts and release/deploy them with ease. This means that you don't have to learn a whole ass new language to write a smart contract.
thirdweb has pre-built smart contracts templates for many things; whether you need NFTs, marketplaces, tokens, etc. The smart contract templates are just templates. You just fill in the details of your project, modify and change the smart contract through code or through the Dashboard to fit your needs, and deploy it from your wallet.
You have full ownership over your contract, and they're also secured so you can focus on building.
After you deploy your smart contract, you can use thirdweb's SDKs to integrate it to your app.
SDKs
thirdweb's SDKs allow us to build web3 apps and set features, such as connecting to users' wallets and deploying/interacting with smart contracts. thirdweb's SDKs support the most popular languages, such as JavaScript, Python, and Solidity.
thirdweb's React SDK is widely used to build front-end apps. The React SDK would particularly be useful if you want to build a front-end app, in which users connect their wallets and interact with your contracts using their wallets. One example is a website where you mint NFTs.
Dashboard
thirdweb simplifies plenty of things for developers.
For example, thirdweb's Dashboard allows creators to deploy any of thirdweb's pre-built contracts to the supported networks with just a single command. This means that there isn't work to do in the backend.
It also allows creators to create, manage, and interact with their smart contracts. For example, after deploying a contract, you can manage its behavior by editing its configuration; such as, metadata and permission controls.
What can you do with thirdweb?
You can do a shit ton of stuff with thirdweb.
Here are some examples:
NFT marketplaces
thirdweb simplifies building NFT marketplaces thanks to its pre-built Marketplace contract.
The Marketplace contract allows you to basically do what you can in OpenSea, or any other NFT marketplace. For example, list NFTs for sale or buy and sell NFTs. Other users are able to place bids for your NFTs or buy for the specified amount.
One reason you'd want to use this contract is if you want to sell your NFTs on your own NFT marketplace, rather than on OpenSea, where there's a service fee. Or, if you want to create the next big NFT marketplace.
Add web3 to your web2 app
thirdweb allows us to add web3 features to our existing web2 apps.
One example is the Token contract, which basically allows us to create a digital currency. Users can then claim this token and keep it, or sell it or trade it with others in an exchange.
One reason you'd want to use this contract is if you want to allow users that hold the token early access to your platform, or if you want to reward users for completing/doing something.
DAO memberships
thirdweb facilitates selling DAO memberships in the form of NFTs with its pre-built Edition Drop contract.
The Edition Drop contract allows us to release a collection of NFTs. With this contract, we're able to set conditions that define when and how users can claim an NFT; including, allowlists, release dates, and claim limits.
One reason you'd want to use this contract is if you want users to claim your NFTs under certain restrictions. For example, allowing only certain wallet addresses in an allowlist to mint tokens, or only allowing users that paid a certain amount of a certain currency to mint.