This repository is a working space on the outline and the contents for the first FunC video course for beginners. We are publishing this prior to recording, in order to gather as much feedback as possible.
For each section we are going to also publish a deadline for providing feedback, where the deadline will be the actual date of this section's recording.
Feel free to contribute to the course! If you have a suggestion of a chapter/lesson/speaker - please open an issue on this repository and we will address it as soon as possible. In case you notice a typo or have some content that is ready to become a chapter/lesson - simply open a Pull Request and we will do our best to integrate this into our course.
For any questions or inquiries, please contact Liza or Mark
👤 Assignee: Oleg Andreev
Lesson | Text script | Presentation | Video |
---|---|---|---|
1. Blockchains, accounts and transactions | |||
2. Understanding the concept of account | |||
3. Breakdown the logic of classic wallet code | |||
4. Breakdown the logic of NFT (Non-fungible token) | |||
5. Breakdown the logic of Jetton |
Lesson 1. Blockchains, accounts and transactions: Overview of the basic account logic - balance, transacitons history. Master and workchain role and possibilities. Understanding the role of validators.
Lesson 2. Understanding the concept of account: In-depth concept of the account a.k.a wallet/contract. Customization possiblities that enable variety of custom financial services as well as whole new entities, such as jettons.
Lesson 4. Breakdown the logic of NFT (Non-fungible token) ex.: Validation of the token on initialization etc.
Lesson 5. Breakdown the logic of Jetton ex.: Jetton validation example etc.
👤 Assignee: Oleg Andreev
Lesson | Text script | Presentation | Video |
---|---|---|---|
1. Messages types and computation phases | |||
2. Understanding transaction cost | |||
3. Authorization | |||
4. Scalable contracts | |||
5. Review of classic business problems |
Lesson 2. Understanding the concept of account: Gas, rent, other comissions. Paid incoming messages logic.
Lesson 3. Authorization: Signing messages, sign verification, best practices.
Lesson 4. Scalable contracts: Storing the state in a distributed and tokinized way
Lesson 5. Review of classic business problems Plugins, staking-pools, multisig
👤 Assignee: Mark Okhman
Lesson | Text script | Presentation | Video |
---|---|---|---|
1. Smart contract dev lifecycle overview | Link | ||
2. Setting up a compile worklow | Link | ||
3. Writing simple FunC contract | Link | ||
4. Setting up testing workflow and writing tests | Link | ||
5. Deploying smart contract | Link |
👤 Assignee: Mark Okhman
Lesson | Text script | Presentation | Video |
---|---|---|---|
1. Writing FunC contract with counter logic | Link | ||
2. Writing tests for counter contract | Link | ||
3. Writing FunC contract with deposit/withdrawal logic | Link | ||
4. Writing tests for deposit/withdrawal logic | Link |
TODO: Idea - add a lesson that would cover op codes aliasing, TL-B file composing, explain bouncing and how to work with it, how to debug
👤 Assignee: Open for offers (or Mark Okhman)
Chapter structure and contents are subject to change based on the assigned author preferences
Lesson | Text script | Presentation | Video |
---|---|---|---|
1. Introduction to concept of Token | |||
2. Classic Jetton smartcontract | |||
3. Sharded Jetton wallet-contract | |||
4. Testing Jetton smartcontracts | |||
5. NFT smartcontracts |
Lesson 1. Introduction to concept of Token: Fungible/Non-fungible token concepts. Reviewing token standards.
Lesson 2. Classic Jetton smartcontract: Glance view to code of classic Jetton smartcontract structure. Implementing sharded Jetton master-contract.
Lesson 3. Sharded Jetton wallet-contract: Implementing sharded Jetton wallet-contract. Deploying Jetton master and wallet contracts to tesnnet.
👤 Assignee: Open for offers (or Shahar)
Chapter structure and contents are subject to change based on the assigned author preferences
👤 Assignee: Mark Okhman
Lesson | Text script | Presentation | Video |
---|---|---|---|
1. Authentification with Tonhub | |||
2. Authentification with Tonkeeper | |||
3. Simple logic of showing wallet data after authentification | |||
4. Initiating/requesting transactions (tonhub & tonkeeper) | |||
5. Using TON API to read and represent data from blockchain | |||
6. Telegram Web App structure and programming | |||
7. Telegram bot structure and programming |
👤 Assignee: Kirill Malev