Categories

There are currently no items in your shopping cart.

User Panel

Forgot your password?.

Ethereum and Solidity: The Complete Developer’s Guide

Video Introducing this tutorial


What is Ethereum? :
Introduction
Link to Github Repo
A Short History Lesson
Link to Original Bitcoin White Paper
What is Ethereum?
Interfacing with Ethereum Networks
Metamask Setup
Ethereum Accounts
Receiving Ether
What's a Transaction?
Why'd We Wait?
A Quick Note
Basic Blockchains
Block Time
Smart Contracts
The Solidity Programming Language
Our First Contract
Contract Structure
Function Declarations
Testing with Remix
Redeploying Contracts
Behind the Scenes of Deployment
More on Running Functions Than You Want to Know
Wei vs Ether
Gas and Transactions
Mnemonic Phrases
Getting More Ether

Smart Contracts with Solidity :
Don't Skip! Node JS Versioning
Contract Deployment
Boilerplate Requirements
Project File Walkthrough
Syntax Highlighters
Compiling Solidity
The Compile Script
Testing Architecture
Running Windows?
Installing Modules
Web3 Versioning
Web3 Providers
Testing with Mocha
Mocha Structure
Fetching Accounts from Ganache
Refactor to Async/Await
Deployment with Web3
Deployed Inbox Overview
Asserting Deployment
Web3 Version Fix
Verifying the Initial Message
Testing Message Updates
Deployment with Infura
Infura Signup
Wallet Provider Setup
Deployment to Rinkeby
Observing Deployment on Etherscan
Deployed Contracts in Remix
Project Review

Advanced Smart Contracts :
The Lottery Contract
Lottery Design
Basic Solidity Types
Starting the Lottery Contract
The Message Global Variable
Overview of Arrays
Overview of Mappings and Structs
Big Solidity Gotcha
Entering the Lottery
Validation with Require Statements
The Remix Debugger
Pseudo Random Number Generator
Selecting a Winner
Sending Ether from Contracts
Resetting Contract State
Requiring Managers
Function Modifiers
Returning Players Array
Contract Review
New Test Setup
Test Project Updates
Test Helper Review
Asserting Deployment
Entering the Lottery
Asserting Multiple Players
Try-Catch Assertions
Testing Function Modifiers
End to End Test

Building Interactive Front-Ends :
Ethereum App Architecture
Application Overview
Getting Started with Create-React-App
Multiple Web3 Instances
Web3 Setup
Deploying the Lottery Contract
Local Contract Instances
Rendering Contract Data
Instance Properties
Accessing More Properties
The 'Enter' Form
Form Setup
Entering the Lottery
Picking a Winner
Project Review

Real Projects with Ethereum :
Solving Real Problems with Contracts
Fixing Kickstarter's Issues
Campaign Contract Design
Campaign Constructor
Contributing to the Campaign
A Quick Test
The Request Struct
More on Function Modifiers
Creating Struct Instances
Instance Creation Syntax
Storage and Memory
More on Storage vs Memory
Voting System Requirements
The Wrong Voting System
Issues with Arrays
Mappings vs Arrays
Basics of Mappings
Refactoring to Mappings
Refactoring Request Stucts
More on Struct Initialization
Approving a Request
Testing Request Approvals
Finalizing a Request
Last Remix Test
Thinking about Deployment
Solution to Deployment
Adding a Campaign Factory
Testing the Factory

Ethereum Project Infrastructure :
Project Setup
Directory Structure
A Better Compile Script
Single Run Compilation
More on Compile
Test File Setup
Creating Campaign Instances
Testing Warmup
Accessing Mappings
Requiring Minimum Contributinos
Array Getters
One End to End Test
Deployment
Refactoring Deployment

Advanced Multi-Page Front-Ends :
App Mockups
CRA vs Next
Next's Pages Architecture
Basics of Next Routing
Root Routes
CampaignFactory Instance
Getting a Test Campaign
Fetching Deployed Campaigns
Why Next.js, Anyways?
Server vs Client Web3 Instances
GetInitialProps Function
Semantic UI React
Card Group Setup
Rendering Card Groups
Adding CSS
Adding a Button
The Need for a Layout
The Layout Component
Assembling a Header
Constraining Content Width
Two Column Layout
Nested Routing
Final CSS Fix
Form Creation
Input Change Handlers
Form Submittal
Testing Submittal
Form Error Handling
Button Spinners
Routing Issues
Next Routes Setup
Automatic Navigation
Header Navigation
Routing to Campaigns
Restarting the Server
Route Mappings
Planning CampaignShow
Redeploying CampaignFactory
CampaignShow's GetInitialProps
Accessing a Campaign
Summary Translation Layer
Custom Card Groups
One Card Per Property
The Contribute Form
Grid Layouts
Form State
Communicating the Campaign Address
Making a Contribution
Refreshing Contract Data
Spinners and Error Handlers
Listing Requests
Grids vs Columns
More Routing!
Request Creation Form
Creating a Request
Form Polish
Creating a Request
Requests One by One
Fancy Javascript
Small Typo!
Rendering a Table
Request Row Component
Request Row Content
Approvers Count Cell
Approving a Request
Finalizing Requests
Testing Finalization
Row Status Styling
Finishing Requests Index
Wrapup

Appendix: Basic React :
A Note on This Section
Purpose of Boilerplate Projects
Environment Setup
Project Setup
JSX
More on JSX
ES6 Import Statements
ReactDOM vs React
Component Instances
Render Targets
Component Structure
Youtube Search API Signup
Export Statements
Class Based Components
Handling User Events
Introduction to State
State Continued
Controlled Components
Breather and Review
Youtube Search Response
Refactoring Functional Components to Class Components
Props
Building Lists with Map
List Item Keys
Video List Items
Detail Component and Template Strings
Handling Null Props
Video Selection
Styling with CSS
Searching for Videos
Throttling Search Term Input
React Wrapup
Vue Flavored Version
Bonus!

You Have Got Gift 25% OFF

Use this Coupon Code “J3JKN396