Introduction to Python and Vyper

Beginner

Introduction to Python and Vyper

Start your journey as a Python and Vyper smart contract developer. Learn how to write, deploy, and interact with Python based smart contracts using the Vyper programming language. Learn how to build your decentralized applications and kickstart your career as a web3 developer.


1. Welcome
A comprehensive introduction to Vyper smart contract development - This lesson covers the basics of Vyper, a secure and easy-to-learn smart contract language based on Python. Learn about its advantages, and how it compares to Solidity, as well as best practices for developing secure smart contracts. Duration: 5min
2. Best Practices
A detailed guide to best practices for getting the most out of the course, including navigating Cyfrin Updraft, using the GitHub Repo, and interacting with the community. Duration: 8min
3. Mox Best Practices
A comprehensive guide to best practices for the Vyper & Moccasin course. The lesson covers how to navigate the course repository, leverage the discussions tab for assistance, and understand the importance of GitHub for smart contract developers. Duration: 2min
4. Walkthrough
A practical guide to deploying your first Vyper smart contract - This lesson will walk you through deploying your first Vyper smart contract using the Remix IDE. It covers the basics of the Remix IDE and how to deploy your contract, as well as best practices for building smart contracts. Duration: 1min
5. Welcome To Remix
A comprehensive guide to using the Remix IDE, focusing on building a Vyper smart contract. The lesson covers activating the Vyper compiler, creating a new file, typing code, and understanding the basics of smart contracts. Duration: 6min
6. Pragma Version
A quick guide to Pragma Version in Vyper - This lesson covers the importance of specifying the version of Vyper in your smart contract. Learn how to use the Pragma statement, different version specification methods, and how it helps ensure compatibility with your compiler. Duration: 2min
7. Comments
A simple guide to comments in Vyper - This lesson will teach you the basics of comments in Vyper. We'll cover the functionality of comments, how they are written in Vyper, and why they are a crucial tool in Vyper programming. Duration: 1min
8. License
A helpful introduction to Vyper license identifiers - This lesson explains the importance of including a license identifier in Vyper code. It specifically covers the widely used MIT license and how it allows others to use and modify the code. Duration: 1min
9. Compiling
A basic introduction to compiling Vyper smart contracts. The lesson covers the fundamentals of compiling, including version specifications and license identifiers, and provides a real-time demonstration of how errors are handled. Duration: 2min
10. Contract Design
A basic Vyper smart contract to create a favorites list - This lesson shows how to create a simple smart contract that stores favorite numbers and people with their favorite numbers. It includes using mapping and structs in Vyper. Duration: 1min
11. Vyper Types
A comprehensive guide to basic value types in Vyper. The lesson covers Booleans, Signed Integers, Unsigned Integers, Decimals, Addresses, and Bytes arrays, while providing a brief explanation of their use and syntax. Duration: 4min
12. Visibilitiy
A comprehensive introduction to variable visibility and deployment within the Remix IDE. The lesson delves into declaring public variables in Vyper, understanding the implications of visibility, and deploying your smart contract to the Remix Virtual Machine. Duration: 4min
13. Functions
A simple guide to defining functions in Vyper. The lesson covers the syntax for defining functions using the `def` keyword, specifying parameters, and using the `self` keyword to access variables in the contract. Duration: 5min
14. Func Visibility
A comprehensive guide to understanding function visibility in Vyper. The lesson covers the concepts of internal, external, and public visibility decorators, explaining how they control access to functions and state variables. It also demonstrates the impact of visibility on function calls and contract deployment. Duration: 2min
15. View And Pure
A comprehensive introduction to the '@view' and '@pure' decorators in Vyper, a language similar to Solidity for smart contract development on Ethereum. The lesson covers key concepts such as the difference between static calls and transactions, how they affect gas usage, and when to use '@view' and '@pure' in your smart contracts. Duration: 9min
16. Constructor
A comprehensive guide to constructors in Vyper smart contracts, covering their purpose, how they are defined, and how to use them effectively. This lesson will provide you with a clear understanding of constructors and their role in setting initial values for your Vyper contracts. Duration: 5min
17. Advanced Funcs
A practical guide to more advanced functions in Vyper - This lesson covers the syntax for declaring external functions and the purpose of the @external and @pure keywords. It also shows examples of how to write functions that take multiple outputs and the use of the 'pass' keyword. Duration: 4min
18. Ref Types
A comprehensive guide to reference types in Vyper. The lesson explores the concepts of fixed-size lists, dynamic arrays, mappings, and structs, providing practical examples and demonstrating how to read and write to these data types. Duration: 8min
19. Claude
A comprehensive introduction to using Claude 3.5, an AI agent, as a coding tutor. This lesson covers asking questions, declaring public arrays in Vyper, and exploring the functionality of AI assistants. Duration: 3min
20. Arrays Lists
A practical Vyper tutorial on working with arrays and lists in your smart contracts. The lesson demonstrates how to create an array of a specific size and update its elements using external functions. Duration: 9min
21. Structs and Strings
A comprehensive guide to working with structs and strings in Vyper. The lesson covers creating structs to define custom types, using them to store data like names and favorite numbers, and working with fixed-size strings in your Vyper code. Duration: 8min
22. Workshop
A fun workshop to test your Vyper knowledge. The challenge requires you to modify a Vyper smart contract to return a specific value based on an array of people and their corresponding numbers. Duration: 1min
23. Hash Map
A powerful introduction to using Hash Maps (Mapping) in Vyper smart contract programming. This lesson covers the creation of a new storage variable called 'name_to_favorite_number', which is of type Hash Map. Duration: 4min
24. Recap
A comprehensive guide to deploying a Vyper smart contract - This lesson will cover how to deploy a smart contract that stores favorite numbers and names of people. It also discusses the concept of state variables, constructors, and using the Remix IDE to deploy the contract. Duration: 2min
25. Tenderly
A comprehensive guide to deploying a Vyper smart contract to a Tenderly Virtual Testnet, covering the setup of a virtual testnet, connecting to your Metamask wallet, and deploying your contract. Duration: 16min
26. Zksync
A practical guide to deploying ZKVyper contracts to zkSync Era - This lesson demonstrates how to deploy a ZKVyper smart contract to the zkSync Era using Remix IDE. The video provides a step-by-step guide on how to connect to a local plugin, activate the zkSync module, and deploy the contract. Duration: 0min
27. Share
A fun tutorial to sharing your progress - Learn how to share your smart contract progress on Twitter to connect with the community and make your learning journey even more exciting! Duration: 1min
28. Evm
A technical introduction to the EVM - The EVM, or Ethereum Virtual Machine, is a set of standards that define how compiled smart contract code should be written. The lesson discusses the different types of Ethereum Virtual Machine (EVM)-compatible chains and their differences. Duration: 2min
29. Pure And View
A comprehensive guide to understanding pure and view functions in Vyper smart contracts. The lesson delves into the fundamental differences between these function types, their ability to interact with state variables, and how to effectively use them in real-world applications. Duration: 3min
30. Conditionals
A practical guide to conditional statements in Vyper - This lesson provides an example of how to use conditional statements (if-elif-else) in Vyper to create a function that takes a uint256 input and returns different values based on the input. The lesson covers how to set up the function, define the conditions, and return the appropriate value. Duration: 2min
31. Workshop Pt. 2.
Duration: 3min
32. Recap
A comprehensive section recap on Vyper smart contracts - This section reviews the concepts covered in the previous lessons, including pragma version, structs, state variables, visibility, constructors, external decorators, and view functions. Duration: 4min

Course Overview

About the course

Course Description

Last updated on December 4, 2024

Learning path

Vyper

View all courses

Introduction to Python and Vyper

Beginner

Introduction to Python and Vyper

Start your journey as a Python and Vyper smart contract developer. Learn how to write, deploy, and interact with Python based smart contracts using the Vyper programming language. Learn how to build your decentralized applications and kickstart your career as a web3 developer.

6hrs
75 lessons
4 projects

Intermediate Python and Vyper

Intermediate

Intermediate Python and Vyper

Learn intermediated Python smart contract development using Vyper and level up your skills as a smart contract developer. This course will teach you how to test your Python based Vyper smart contracts, how to deploy contracts on ZKsync using Moccasin, the first web3 development framework to natively support ZKsync ERA, and launch your first cryptocurrency!

14hrs
174 lessons
6 projects

Testimonials

Students Reviews

Read what our students have to say about this course.

Chainlink

Chainlink

Chainlink

Gustavo Gonzalez

Gustavo Gonzalez

Solutions Engineer at OpenZeppelin

Francesco Andreoli

Francesco Andreoli

Lead Devrel at Metamask

Albert Hu

Albert Hu

DeForm Founding Engineer

Radek

Radek

Senior Developer Advocate at Ceramic

Boidushya

Boidushya

WalletConnect

Idris

Idris

Developer Relations Engineer at Axelar

Cyfrin
Updraft
CodeHawks
Solodit
Resources