
0
+
Google Reviews

0
+
4.4 ( 2040 Ratings )
A blockchain is a digitized, decentralized, public ledger of all cryptocurrency transactions. Constantly growing as ‘completed’ blocks (the most recent transactions) are recorded and added to it in chronological order, it allows market participants to keep track of digital currency transactions without central recordkeeping. Each node (a computer connected to the network) gets a copy of the blockchain, which is downloaded automatically.
Curriculum Designed by Experts
Basic Solidity
Versioning
Compiling
Contract Declaration
Types & Declaring Variables
uint256, int256, bool, string, address, bytes32
Default Initializations
Comments
Functions
Deploying a Contract
Calling a public state-changing Function
Visibility
Scope
View & Pure Functions
Structs
Intro to Storage
Arrays – Dynamic & Fixed sized
Compiler Errors and Warnings
Memory
Mappings
SPDX License
Deploying to a “Live” network
A testnet or mainnet
Find a faucet here
Connecting Metamask
Interacting with Deployed Contracts
The EVM
Inheritance, Factory Pattern, and Interacting with External Contracts
Payable, msg.sender, msg.value, Units of Measure
Payable
Wei/Gwei/Eth Converter
msg.sender & msg.value
Chainlink Oracles
Decentralized Oracle Network Chainlink
Blockchains can’t make API calls
Centralized Nodes are Points of Failure
data.chain.link
Getting External Data with Chainlink Oracles
Chainlink
Faucets and Contract Addresses
Kovan
Getting Price Information
Importing from NPM and Advanced Solidity
Decimals/Floating Point Numbers in Solidity
latestRoundData
Importing from NPM in Remix
Interfaces
Introduction to ABIs
Getting Price Feed Addresses
getPrice
Tuples
Unused Tuple Variables
Matching Units (WEI/GWEI/ETH)
getConversionRate
Matching Units (Continued)
SafeMath & Integer Overflow
using keyword
Libraries
SafeMath PSA
Setting a Threshold
Require
Revert
Withdraw Function
Transfer
Balance
this
Contract Owners
Constructor
==
Modifiers
Resetting
for loop
Array Length
Forcing a Transaction
Recap
Installing VSCode, Python, and Web3
VSCode
VSCode Crash Course
Extensions
Short Cuts:
VSCode Shortcuts
VSCode MacOS Shortcuts
Python
Install Troubleshooting
Terminal
Making a directory/Folder
Opening the folder up with VSCode
Creating a new file
Syntax Highlights
Remember to save!
Setting linting compile version
VSCode Solidity Settings
Formatting & Format on Save
Solidity Prettier
Python Black
pip
Python Script with Web3.py – Deploying a Contract
Reading our solidity file
Running a Python Script in the Terminal
MaxOS Shortcuts
Windows Shortcuts
Linux Shortcuts
Compiling in Python
py-solc-x
compile_standard
Colorized Brackets
JSON ABI
Saving Compiled Code
Formatting JSON
Deploying in Python
Get Bytecode
Get ABI
Choose Blockchain to Deploy To
Local Ganache Chain
Ganache UI
Ganache Command Line
Web3.py
HTTP / RPC Provider
Private Keys MUST start with “0x”
Contract Object
Building a Transaction
Account Nonce
Calling “Contructor”
Transaction Parameters
Signing the Transaction
NEVER put your private key directly in your code
Setting Environment Variables (Windows, Linux, MacOS)
More on Windows Environment Variables
Exported Environment Variables Only Last the Duration of the Shell/Terminal
Private Key PSA
.env file
.gitignore
Loading .env File in Python
python-dotenv
Viewing our Transaction / Deployment in Ganache
Waiting for Block Confirmations
Interacting with Our Contract in Python & Web3.py
2 Things you always need
Contract Address
Contract ABI
Getting address from transaction receipt
Calling a view function with web3.py
Call vs Transact
Updating State with Web3.py
ganache-cli
Installing Ganache
Install Nodejs
Install Yarn
Working with ganache-cli
Open a new terminal in the same window
Deploying to a testnet
Infura
Alchemy
Using Infura RPC URL / HTTP Provider
Chain Ids
Brownie Introduction
Installing Brownie
Installing Brownie
Install pipx
pipx install eth-brownie
Testing Successful Install
Brownie Simple Storage Project
A new Brownie project with brownie init
Project Basic Explanation
Adding SimpleStorage.sol to the contracts folder
Compiling with brownie compile
Brownie deploy script
def main is brownie’s entry point
brownie defaults to a development ganache chain that it creates
Placing functions outside of the main function
brownie accounts
3 Ways to Add Accounts
accounts[0]: Brownie’s “default” ganache accounts
Only works for local ganache
accounts.load(“…”): Brownie’s encrypted command line (MOST SECURE)
Run brownie accounts new <name> and enter your private key and a password
accounts.add(config[“wallets”][“from_key”]): Storing Private Keys as an environment variable, and pulling from our brownie-config.yaml
You’ll need to add dotenv: .env to your brownie-config.yaml and have a .env file
Importing a Contract
Contract.Deploy
View Function Call in Brownie
State-Changing Function Call in Brownie / Contract Interaction
transaction.wait(1)
Testing Basics
test_simple_storage.py
Arrange, Act, Assert
assert
brownie test
test_updating_storage
Pytest / Brownie Test Tips
Deploy to a Testnet
brownie networks list
Development vs Ethereum
Development is temporary
Ethereum networks persist
RPC URL / HTTP Provider in Brownie
The network flag
list index out of range
get_account()
networks.show_active()
build/deployments
Accessing previous deployments
Interacting with contracts deployed in our brownie project
Introduction
Setup
Dependencies, Deploying, and Networks
Dependencies
chainlink-brownie-contracts
remappings
Deploy Script (V1)
helpful_scripts.py
__init__.py
Deploy to Rinkeby
Contract Verification (publish_source)
The Manual Way
“Flattening”
The Programatic Way
Getting an Etherscan API Key
ETHERSCAN_TOKEN
Interacting with Etherscan
Deploying to Local Chains
Introduction to Mocking
Constructor Parameters
networks in our brownie-config.yaml
Copying Mock Contracts from chainlink-mix
Deploying and using our mock
Refactoring
Deploying to a persistent ganache
brownie attach
Adding a persistent brownie network
resetting a network build
Funding and Withdrawing Python Scripts
Fund Script
Withdraw Script
Testing across networks
test_can_fund_and_withdraw
default networks
pytest pip install pytest
pytest.skip
brownie exceptions
mainnet-fork
Custom mainnet fork
Adding a development brownie network
brownie networks add development mainnet-fork-dev cmd=ganache-cli host=http://127.0.0.1 fork=’https://infura.io/v3/$WEB3_INFURA_PROJECT_ID’ accounts=10 mnemonic=brownie port=8545
Alchemy
brownie test –network mainnet-fork
brownie ganache vs local ganache vs mainnet-fork vs testnet…
Git
Installing Git
Creating a repository
First time with git
Adding our project to github
Introduction
Lottery.sol
Testing Lottery.sol
Defi Intro
Aave UI
Programmatic Interactions with Aave
Non-Technical Explainer
Simple NFT
Advanced deploy_and_create
Creating Metadata & IPFS
Introduction to upgrading smart contracts
Sectors are changing due to blockchain technology, and success depends on having in-demand talents. Enroll in our Blockchain Technical Course Training to gain hands-on experience with smart contracts, consensus algorithms, cryptography, and decentralized applications. Unlock your future with certification today!
A Blockchain Technical Course Training unlocks numerous career opportunities such as Blockchain Developer, Architect, Consultant, and Project Manager. With demand surging across industries like finance, healthcare, and supply chain, certification boosts your career prospects. Enroll now to lead in this transformative technology!
Cloud adoption in blockchain is transforming the tech landscape. Our Blockchain Technical Course Training covers cloud integration, smart contracts, and decentralized apps. Certification boosts your expertise in cloud-based blockchain solutions. Enroll today to stay ahead in this evolving field!
Blockchain Technical Course Training offers scalability and flexibility for developing decentralized solutions. Learn to create systems that efficiently scale with growing demands while maintaining adaptability. Blockchain certification provides the skills to manage diverse projects, enhancing your career in this cutting-edge field.
Blockchain Technical Course Training equips you with essential cost management skills for blockchain projects. Learn to optimize resources, reduce expenses, and enhance efficiency. With blockchain certification, you’ll gain practical expertise to manage costs effectively, advancing your career in this evolving industry.
Blockchain Technical Course Training ensures mastery in security and compliance. Learn to implement secure, compliant blockchain systems, safeguarding data and meeting regulatory standards. Enroll in blockchain certification training to enhance your skills, protect projects, and advance your career in a secure industry.