Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/sui-foundation/sui-move-intro-course

Introductory Course to the Sui Move language
https://github.com/sui-foundation/sui-move-intro-course

Last synced: about 1 month ago
JSON representation

Introductory Course to the Sui Move language

Awesome Lists containing this project

README

        

# Move Intro Course

Introductory course to the Move language maintained by [Sui Foundation](https://suifoundation.org/).

## Content

- **Unit One: Environment Setup and Hello World**
- [Set Up Environment](./unit-one/lessons/1_set_up_environment.md)
- [Sui Project Structure](./unit-one/lessons/2_sui_project_structure.md)
- [Custom Types and Abilities](./unit-one/lessons/3_custom_types_and_abilities.md)
- [Functions](./unit-one/lessons/4_functions.md)
- [Contract Deployment](./unit-one/lessons/5_contract_deployment.md)
- **Unit Two: Working with Sui Objects**
- [Introduction](./unit-two/lessons/1_working_with_sui_objects.md)
- [Ownership](./unit-two/lessons/2_ownership.md)
- [Parameter Passing and Object Deletion](./unit-two/lessons/3_parameter_passing_and_object_deletion.md)
- [Object Wrapping](./unit-two/lessons/4_object_wrapping.md)
- [Object Wrapping by Example](./unit-two/lessons/5_object_wrapping_example.md)
- [Capability Design Pattern](./unit-two/lessons/6_capability_design_pattern.md)
- [Events](./unit-two/lessons/7_events.md)
- **Unit Three: Fungible Tokens**
- [Sui Framework](./unit-three/lessons/1_sui_framework.md)
- [Intro to Generics](./unit-three/lessons/2_intro_to_generics.md)
- [Witness Design Pattern](./unit-three/lessons/3_witness_design_pattern.md)
- [The `Coin` Resource and `create_currency` Method](./unit-three/lessons/4_the_coin_resource_and_create_currency.md)
- [Managed Coin Example](./unit-three/lessons/5_managed_coin.md)
- [`Clock` and Locked Coin](./unit-three/lessons/6_clock_and_locked_coin.md)
- [Unit Testing](./unit-three/lessons/7_unit_testing.md)
- **Unit Four: Marketplace**
- [Homogeneous Collections](./unit-four/lessons/1_homogeneous_collections.md)
- [Dynamic Fields](./unit-four/lessons/2_dynamic_fields.md)
- [Heterogeneous Collections](./unit-four/lessons/3_heterogeneous_collections.md)
- [Marketplace Contract](./unit-four/lessons/4_marketplace_contract.md)
- [Deployment and Testing](./unit-four/lessons/5_deployment_and_testing.md)
- **Unit Five: Sui Kiosk**
- [Programmable Transaction Block](./unit-five/lessons/1_programmable_transaction_block.md)
- [Hot Potato Design Pattern](./unit-five/lessons/2_hot_potato_pattern.md)
- [Sui Kiosk Basic Concepts](./unit-five/lessons/3_kiosk_basics.md)
- [Sui Kiosk Basic Usage](./unit-five/lessons/4_kiosk_basic_usage.md)
- [Transfer Policy](./unit-five/lessons/5_transfer_policy.md)
- **Advanced Topics**
- [BCS Encoding](./advanced-topics/BCS_encoding/lessons/BCS_encoding.md)

## TODOs

- [x] Write BCS lesson for advanced topics
- [x] Create a multi-platform Docker image
- [ ] Create exercises for each unit
- [ ] Add content on Display.move
- [x] Add content on clock and example on token unlocking
- [ ] Write advanced topic lesson on closed loop token standard
- [ ] Write advanced topic lesson on package upgrades
- [ ] Write new lesson on kiosks
- [x] Check and update Unit One against latest version of Sui
- [ ] Check and update Unit Two against latest version of Sui
- [ ] Check and update Unit Three against latest version of Sui
- [ ] Check and update Unit Four against latest version of Sui
- [ ] Check and update Advanced Topics against latest version of Sui

## General Developer Resources

- [Sui Developer Documentation](https://docs.sui.io/build)
- [Sui Developer Portal](https://sui.io/developers)
- [Sui GitHub](https://github.com/MystenLabs/sui)
- [Sui Framework Documentation](https://github.com/MystenLabs/sui/tree/main/crates/sui-framework/docs)
- [Sui Typescript SDK (official)](https://github.com/MystenLabs/sui/tree/main/sdk/typescript)
- [Sui Typescript SDK (community)](https://github.com/scallop-io/sui-kit)
- [Sui Rust SDK (official)](https://github.com/MystenLabs/sui/tree/main/crates/sui-sdk)
- [Sui Golang SDK (community)](https://github.com/coming-chat/go-sui-sdk)
- [Sui Python SDK (community)](https://github.com/FrankC01/pysui)
- [Sui Java SDK (community)](https://github.com/GrapeBaBa/sui4j)
- [Sui Kotlin SDK (community)](https://github.com/cosmostation/suikotlin)
- [Sui C# SDK (community)](https://github.com/d-moos/SuiNet)
- [Sui Dart SDK(community)](https://github.com/mofalabs/sui)
- [Sui Explorer](https://suiexplorer.com/)

## Socials and Communities

If you want to join Sui's online communities, you can join via following links:

- [Sui Network Twitter](https://twitter.com/SuiNetwork)
- [Sui Official Discord](https://discord.gg/sui)
- [Sui Developer Forums](https://forums.sui.io/)

## Repo Translations

- [x] English
- [x] [Chinese](https://github.com/RandyPen/sui-move-intro-course-zh)
- [x] [Thai](https://github.com/Contribution-DAO/sui-move-intro-course-thai)

Please [get in touch](mailto:[email protected]) if you want to help translate this into other languages.

## Videos and Other Formats

- [x] Encode Club Video Series (English) [YouTube playlist](https://www.youtube.com/playlist?list=PLfEHHr3qexv_aE7p6oDyVtD3WQsDsJngr) | [tutorial and code](https://github.com/sui-foundation/encode-sui-educate)
- [x] [BuidlerDAO Video Series](https://www.bilibili.com/video/BV1RY411v7YU) (Chinese)
- [x] MoveBit Move on Sui Course (English) [YouTube playlist](https://www.youtube.com/playlist?list=PL3id4Z64z2sNED_aH7UYIFFwy6MsvKCN9) | [tutorial and code](https://github.com/movebit/sui-course-2023)

## FAQ

1. Can I use the content of this repo to produce other educational content related to Sui or Sui Move programming language?

Yes. That is the original intention of this repo, to allow content creators and educational platforms to use and expand on the material within this repo to create different forms of media or technical content about Sui or the Sui Move language.

This repo is licensed under the Creative Common License; [CC-BY-SA-4.0 license](https://github.com/sui-foundation/sui-move-intro-course/blob/main/LICENSE), to be specific. This allows anyone to remix, transform, build or share the content in this repo for whatever purposes, but any content based on this repo also needs to be licensed under the same Creative Common License, and give an attribution to the source.

2. How can I contribute to this repo?

Fork and open a PR against the upstream repo. We are open to community contributions.