Awesome
Getting started with the Internet Computer ♾.
This repository contains curated content from the 1st edition of the <a href="https://github.com/motoko-bootcamp/bootcamp" target="_blank"> Motoko Bootcamp </a> .
Lessons 📜
6 differents topics are covered, all the lessons are focused on Motoko. <br/> For each topic, a guide is available and a set of challenges with their solution are also available.
- Introduction : Actor, function, types,variables, loops and modules
- Binary, Nat 8, Char and Text
- Array, Optional and Generic type, and Higher order functions
- Custom type and Linked list
- Principal, Hashmap, Cycles (how to deal with upgrades) & stable variables
- Variant types, Result type, HTTP request & Intercanister messages
Lectures 🎬
Each lecture is approximately 1 hour long and was held live by one of the bootcamp mentor.
- Motoko : <a href="https://www.youtube.com/watch?v=DREJTZEccXA&list=PL-JWmSO_v6zIR71ny36laRgwYEcZ27WhC" target="_blank"> introduction to the language </a> by <a href="https://github.com/SebThuillier" target="_blank"> Seb </a>.
- Motoko : <a href="https://www.youtube.com/watch?v=4YX41Nm7Wx8&list=PL-JWmSO_v6zIR71ny36laRgwYEcZ27WhC" target="_blank"> Variables, function and types </a> by <a href="https://github.com/professionalGithub99" target="_blank"> Albert </a>.
- <a href="https://www.youtube.com/watch?v=T6vN7BZbZ7k&list=PL-JWmSO_v6zKU1QxsVDKmukkqFN64W-Nl" target="_blank"> An introduction to the Internet Computer </a> protocol by <a href="https://github.com/bodily11" target="_blank"> Bob </a>.
- <a href="https://www.youtube.com/watch?v=ckEkJsdIkLY&list=PL-JWmSO_v6zKU1QxsVDKmukkqFN64W-Nl" target="_blank"> Why Web 3.0 and the IC matter </a> by <a href="https://github.com/weedpatch2" target="_blank"> Weedpatch </a>.
- Motoko : <a href="https://www.youtube.com/watch?v=S_mxt-V4JCM&list=PL-JWmSO_v6zKU1QxsVDKmukkqFN64W-Nl" target="_blank"> Create, read, update & delete (CRUD) </a> by <a href="" target="_blank"> Seb </a>.
- <a href="https://www.youtube.com/watch?v=EwJcTmMS3L4" target="_blank"> Deploying your first canister locally and on the Internet Computer </a> by <a href="https://github.com/orgs/motoko-bootcamp/people/anthonymq" target="_blank"> Anthony </a>.
- <a href="https://www.youtube.com/watch?v=aBbecyphTic" target="_blank"> Introduction to NFTs on the IC </a> by <a href="https://twitter.com/tedreinhardt" target="_blank"> Ted </a>.
- <a href="https://www.youtube.com/watch?v=Eo5SxW4G7P8" target="_blank"> Candid, the language of the Internet Computer </a> by <a href="https://github.com/chenyan-dfinity" target="_blank"> Yan </a>.
- <a href="https://www.youtube.com/watch?v=T6vN7BZbZ7k&list=PL-JWmSO_v6zKU1QxsVDKmukkqFN64W-Nl" target="_blank"> Frontend and authentication </a> by <a href="https://github.com/krpeacock" target="_blank"> Kyle </a>.
- Motoko : <a href="https://www.youtube.com/watch?v=gaVuMaTP2lQ" target="_blank"> handle HTTP request and assets </a> by <a href="https://github.com/skilesare" target="_blank"> Austin </a>.
- Motoko : <a href="https://www.youtube.com/watch?v=1R9qIpOKcu8" target="_blank"> mutable states and shared types </a> by <a href="https://github.com/saikatdas0790" target="_blank"> Saikat Das </a>.
- Rust : <a href="https://www.youtube.com/watch?v=cSJws2t5kxE" target="_blank"> using tests to speed up development by Adam </a>.
- <a href="https://www.youtube.com/watch?v=btSkITdSlCs" target="_blank"> Deploying a website on the Internet Computer </a> by<a href="https://github.com/saikatdas0790" target="_blank"> Saikat Das </a>.
- Motoko : <a href="https://www.youtube.com/watch?v=DXEEk8-OZ0M" target="_blank"> packages and vessel </a> by <a href="https://github.com/di-wu" target="_blank"> Quint </a>.
- Motoko : <a href="https://www.youtube.com/watch?v=VGrBatKZnbo" target="_blank"> admin access, error handling and cycles management </a> by <a href="https://github.com/orgs/motoko-bootcamp/people/jorgenbuilder" target="_blank"> Jorgen </a>.
- Motoko : <a href="https://www.youtube.com/watch?v=GFenqSGhj7I" target="_blank"> variant types </a> by <a href="https://github.com/paulyoung" target="_blank"> Paul </a>.
- <a href="https://www.youtube.com/watch?v=CeqnBC1twc4" target="_blank"> An introduction to the ICP ledger </a> by <a href="https://twitter.com/NNSystem" target="_blank"> Fulco </a>.
- Typescript : <a href="https://www.youtube.com/watch?v=UQXgzFG2_c4" target="_blank"> writing canister with TS </a> by <a href="https://github.com/lastmjs" target="_blank"> Jordan </a>.
- <a href="https://www.youtube.com/watch?v=2AbDuVxZIrc" target="_blank"> How to interact with a canister </a> by <a href="https://github.com/professionalGithub99" target="_blank"> Albert </a>.
- Rust : <a href="https://www.youtube.com/watch?v=FSeFWmI2-fE" target="_blank"> handle ICP payments </a> by Adam </a>.
- Rust : <a href="https://www.youtube.com/watch?v=YEkLTJvNygc" target="_blank"> storing data and keeping it secure on the IC </a> by <a href="https://github.com/Nima-Ra" target="_blank"> Nima </a>.
- <a href="https://www.youtube.com/watch?v=GYPRqRWYj4o" target="_blank"> Token, nfts and standards on the IC </a> by <a href="https://github.com/orgs/motoko-bootcamp/people/jorgenbuilder" target="_blank"> Jorgen </a>.
This repository also contains the code during some lectures.
- Motoko : mutable states and shared types.
- Deploying a website on the Internet Computer.
- Motoko : create, read, update & delete.
- Motoko : admin access, error handling and cycles management.
- Token, nfts and standards on the IC.
- Rust : Storing data and keeping them secure.
Ressources 📚
Links to other helpful ressources.
<a href="https://medium.com/dfinity/motoko-a-programming-language-designed-for-the-internet-computer-is-now-open-source-8d85da4db735" target="_blank"> An article by DFINITY that summarizes Motoko concepts. </a>: Motoko, Candid, Web assembly...
<a href="https://internetcomputer.org/docs/current/developer-docs/ic-overview" target="_blank"> Internet Computer documentation </a>: The main documentation website for the Internet Computer.
<a href="https://internetcomputer.org/docs/current/developer-docs/build/cdks/motoko-dfinity/motoko" target="_blank"> Motoko Language documentation </a>: The main documentation for the Motoko language.
<a href="https://internetcomputer.org/docs/current/references/motoko-ref/" target="_blank"> Motoko Types documentation </a>: A reference for the Motoko base library types and their functions.
<a href="https://internetcomputer.org/docs/current/references/cli-reference/dfx-parent" target="_blank"> DFX documentation </a>: The main documentation for the DFX command line tool used to deploy and manage dapps on the Internet Computer.
<a href="https://www.google.com/url?q=https://m7sm4-2iaaa-aaaab-qabra-cai.raw.ic0.app/&sa=D&source=docs&ust=1646578646250914&usg=AOvVaw2t9ssTnoubsEHh3XlqkTl9" target="_blank"> Motoko playground </a>: A sandbox to quickly write and test Motoko code from your browser.
<a href="https://marketplace.visualstudio.com/items?itemName=dfinity-foundation.vscode-motoko" target="_blank"> Motoko extension </a>: A Motoko extension for Visual Studio Code that provides syntax highlighting.
<a href="https://github.com/orgs/DFINITY-Education/repositories" target="_blank"> Dfinity education repo </a>: Educational ressources on datastructures, web development, blockchain and more.
<a href="https://internetcomputer.org/samples/" target="_blank"> Examples </a> : Sample code and applications written in Rust or Motoko.
<a href="https://github.com/MioQuispe/create-ic-app" target="_blank"> create-ic-app </a>: Template project for major frameworks (Vue, React, Vanilla JS,Svelte).
<a href="https://github.com/dfinity/invoice-canister" target="_blank"> The invoice canister </a>: processing payments on the IC. 💰
Communities 👦
- <a href="https://discord.gg/m3x86APHyX" target="_blank"> Developer discord </a>
- <a href="https://forum.dfinity.org/" target="_blank"> Dfinity forum </a>