- 🏆 02m: Learning Objectives
- 🤔 03m: Why You Should Know This
- ☀️ 20m: Warm Up
- 📖 30m: Overview
- 30m: Make Progress on Tutorial
- 📚 Resources & Credits
- Analyze the full-stack ecosystem that enables the development of smart contracts and distributed applications in Node.
- Identify and leverage existing boilerplate applications to establish a strong initial foundation in projects.
- Begin proposing, designing, and planning your own token based coin using the Truffle framework!
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.
Answer the warm up questions below in breakout rooms:
You may answer the questions solo or in a pair.
- Challenge 1: What is the difference between Ether and Ethereum?
- Challenge 2: What is an unsigned integer?
- Challenge 3: What is Natspec? How is it used? Write out an example using an unsigned integer!
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.
- 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
andnpm
, using theERC190
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.
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).
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.
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.
- 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.
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.