Skip to content

frankiefab100/Web3.0-Roadmap

Repository files navigation

Web3.0-Roadmap

Personal documentation of Blockchain Development curriculum, code snippets and best of practice learnt on the course of transitioning from Web2.0

Pre-requisite:

  • HTML/CSS
  • Javascript
  • Node JS
  • React
  • Visual Studio Code

Blockchain Development Learning Roadmap

  • Bitcoin white paper
  • Consensus Algorithm/Mechanism
    • Proof of Work
    • Proof of State
    • Proof of Existence
    • Proof of Authority
    • Proof of Burn
    • Byzantine Fault Tolerance
    • Practical Byzantine Fault Tolerance
    • Proof of Reserve
    • Proof of Competence
    • Proof of Capacity
    • Proof of Resource
    • Proof of Activity
    • Proof of Importance

Tools

  • Remix IDE
  • Metamask

Languages

  • Solidity
  • Vyper
  • Rust
  • Golang
  • Javascript

Libraries

  • Truffle
  • Ganache
  • Web3.js
  • Web3.py

Introduction to Ethereum

  • Ethereum Yellow paper
  • Formation of Ethereum: The Journey
  • Philosophy of Ethereum

Ethereum Fundamentals

  • Ethereum World Computer
  • Ethereum Virtual Machine (EVM)
  • Ethereum World State
  • Gas & Ether
  • Accounts
  • Block
  • Ethereum Transaction
  • Account Balance Model
  • Ethereum Transaction Life Cycle

DApps & Smart Contracts

  • Understanding Decentralized Application (DApp)
  • Introduction to DApp
  • DApp Application Stack
  • What is Web3 ?

Introduction to Smart Contracts

  • What is a Smart Contract ?
  • Need and Use of Smart Contract
  • Writing First Smart Contract
  • Running First Smart Contract

Remix IDE

  • Remix IDE File Explorer & Code Editor
  • Remix IDE Compiler Tab
  • Remix IDE Deploy & Run Transactions Tab
  • Remix IDE Offline Mode

Introduction to Solidity

a. Solidity Smart Contract Language

  • Components of a Contract

b. Basic Data Types

  • Integers
  • String
  • Address
  • Enums
  • Booleans
  • Fixed-size Byte Arrays
  • Fixed Point Numbers

c. Solidity Variables

  • Introduction Solidity Variables
  • Visibility/Access Modifiers

d. Functions in Solidity

  • Introduction to Functions in Solidity
  • Visibility/Access Specifiers
  • Mutability
  • Function Modifier

e. Control Structures

  • Introduction to Control Structures
  • If Statement
  • For loop
  • While loop
  • Do-while loop
  • Loop Control

f. Arrays and Structs

  • Arrays
  • Structs
  • Data Location

g. Mapping

  • Introduction to Mapping
  • Iterable Mappings

Interacting with Ethereum Network

a. Introduction

  • Introduction to Ethereum Network
  • Ethereum Clients
  • Ethereum Node Simulation

b. Ethereum Private Node

  • Ethereum Network Settings
  • Installing Go-Ethereum Client
  • Running an Ethereum Node
  • Starting Mining
  • Transferring Ether
  • Dev Node

c. MetaMask Light Client

  • Introduction to MetaMask
  • Setting up MetaMask
  • Test Ether & Faucet
  • Geth and MetaMask
  • Remix IDE and MetaMask
  • Etherscan - The Block Explorer

d. Ganache

  • Ganache CLI
  • Ganache GUI
  • Ganache and Remix
  • Ganache and MetaMask

DApp Development

a. Introduction

  • Introduction to DApp Development
  • What is Web3Js
  • Playing with Web3Js
  • Smart Contract Deployment

b. Contract

  • Writing Smart Contract
  • Run an Ethereum node
  • Compile and Deploy the Contract

c. Interface

  • Steps and Architecture
  • User Interface Design
  • Client-side code for communicating with MetaMask
  • Run the Application

About

Blockchain Development curriculum, code snippets and best of practice learnt on the course of transitioning from Web2.0

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published