This is a broad question but I am sure many might have this in their mind. I am an upcoming blockchain engineer and my exposure to Cardano eco system is limited to buying the ADA cryptocurrency and watching Charles's vlogs. But I want to professionally start using Cardano as my blockchain of choice, for building applications on top of it. For that, I want to learn how to create smart contracts and dApps using this network. I couldn't find any tutorials on sites like Udemy for this but there were many a plenty for Ethereum. Can someone suggest a learning path to learn to build dApps? Any tutorials that I can follow?
There are a lot of places/tools to start, so, here are some of them sorted in a learning path:
- Developers guide, this has a complete guide of tools to start developing on cardano. You can find them in the Builder Tools section.
- Plutus, the smart contracts language (based on Haskell) used in Cardano: Plutus pioneer program
- cardano-node and cardano-cli, last one is a command line tool to interact with Cardano: Installing the Cardano node (just note there are executable nodes)
- Learn some basic commands from Cardano Node CLI Reference
- Minting NFTs (as native assets without plutus) there is a good tutorial in the developers guide
- Alonzo testnet program has a set of exercises to write and submit Plutus scripts on the Alonzo testnets using the node CLI. Also to create DApps.
- There are more tools to use on your DApps:
- Blockfrost is a gateway to the Cardano ecosystem as an API
- Nami Wallet is a browser based wallet extension to interact with the Cardano blockchain
- PAB (Plutus Application Backend) provides the components and environment to help developers interact with smart contracts. Beta release to use on testnet.
- Cardano Wallet provides an HTTP Application Programming Interface (API) and command-line interface (CLI) for working with your wallet.
I know it's a lot of information, but you can go step by step. Hope it helps!
Start learning Plutus Pioneer Program.