Skip to content

Latest commit

 

History

History
108 lines (69 loc) · 6.01 KB

File metadata and controls

108 lines (69 loc) · 6.01 KB

📜 Day 6: Architecting & Implementing Token Based Applications in Node.js

⏱ Agenda {docsify-ignore}

  1. 🏆 02m: Learning Objectives
  2. 🤔 03m: Why You Should Know This
  3. ☀️ 20m: Warm Up
  4. 📖 30m: Overview
    1. Truffle Features
    2. Ganache Features
    3. OpenZeppelin Features
  5. 30m: Make Progress on Tutorial
  6. 📚 Resources & Credits

🏆 02m: Learning Objectives

  1. Analyze the full-stack ecosystem that enables the development of smart contracts and distributed applications in Node.
  2. Identify and leverage existing boilerplate applications to establish a strong initial foundation in projects.
  3. Begin proposing, designing, and planning your own token based coin using the Truffle framework!

🤔 03m: Why You Should Know This

Frameworks boost programmer productivity by initializing a standards-based foundation with which to develop a product.

Truffle Suite provides the scaffolding to our projects, similar to Create React App or Django.

☀️ 20m: Warm Up

Answer the warm up questions below in breakout rooms:

You may answer the questions solo or in a pair.

  1. Challenge 1: What is the difference between Ether and Ethereum?
  2. Challenge 2: What is an unsigned integer?
  3. Challenge 3: What is Natspec? How is it used? Write out an example using an unsigned integer!

📖 30m: Overview


🔗 Quickstart

A world class development environment, testing framework, and asset pipeline for blockchains using the Ethereum Virtual Machine (EVM), aiming to make life as a developer easier.

Truffle Features

  • Built-in smart contract compilation, linking, deployment and binary management.
  • Automated contract testing for rapid development.
  • Scriptable, extensible deployment and migrations framework.
  • Network management: deploy to any number of public and private networks.
  • Package management via ethpm and npm, using the ERC190 standard.
  • Interactive console for direct contract communication.
  • Configurable build pipeline with support for tight integration.
  • External script runner that executes scripts within a Truffle environment.


🔗 Quickstart

Ganache Features

Ganache is a personal blockchain for Ethereum development you can use to deploy contracts, develop your applications, and run tests.

It is available as both a desktop application as well as a command-line tool (formerly known as the TestRPC).



🔗 Quickstart

Drizzle is a collection of front-end libraries that make writing dapp front-ends easier and more predictable.

Takes care of synchronizing contract data, transaction data, and more. Things stay fast because you declare what to keep in sync.



🔗 Quickstart

OpenZeppelin is a library for secure smart contract development. It provides implementations of standards like ERC20 and ERC721 which you can deploy as-is or extend to suit your needs, as well as Solidity components to build custom contracts and more complex decentralized systems.

OpenZeppelin Features

  • Focused on Security: Using industry standard contract security patterns and best practices, develop applications with reduced risk of vulnerabilities using standard, tested, community-reviewed code.
  • Compatibility: Runs on any EVM-compatible blockchain.
  • Modular Approach: Simple code, only basics. Easy collaboration and auditing.
  • Open Source: Community driven. Used by multiple organizations and individuals.

30m: Make Progress on Tutorial

Continue with the Pet Shop tutorial here.

If you've already completed the Pet Shop tutorial, please work on the Election tutorial here. You can turn this in for extra credit, and the assignment is completely optional.

📚 Resources & Credits