The world's first free tutorial for Libra's Move

Hi everyone,

This is Loong from White Matrix. We are a blockchain technology company, focusing on development and research on the blockchain ecosystem. Our philosophy is to save game operating costs and build new gameplay, based on blockchain thinking.

On the road to achieving the goal, we have launched ChainIDE-the world’s first cloud-based IDE, which supports multichain, like Libra, IOST, TRON, ETH and so on.

Since someone may want to learn how to start on Libra’s Move language, on Sep 15th,2019, we also launched the world’s first free tutorial for Move through an interactive game, called MoveCastle( . This is what this post about.

After going online MoveCastle has received the praise from Libra’s official community and the badges for a popular link posted. So far, more than 100k learners have got study experience on our MoveCastle around the world . Also, Southern University of Science and Technology, University of Alberta, the Chinese University of Hong Kong (Shenzhen) and many other top universities and labs all have used MoveCastle as part of their course and research materials.

If you are looking for a tutorial for Libra’s move, MoveCastle would be a good choice for you. It is completely free, and timely, full of entertainment, most importantly customized for the feature of Libra’s Move.

We welcome feedback, discussions, and comments for MoveCatle since then we could improve it and make it more user-friendly.

Thank you.:grin:


More information could be found at or

1 Like

Hey Loong,

great course. Quick feedback, there is a typo on page 3 last paragraph:

It says to declare SeriaDigits instead of SerialDigits:

… Before that, we first need a variable called SeriaDigits , which is used to represent the number of digits in a serial number. This is the main task in this chapter.

In the process of main() , we declare SeriaDigits as u64 and …


Hi martin,
We already fix the typo!
We also support all the Mobile platforms at present.

Thanks Libra Community for all your feedbacks and support.
Let’s broadcast Libra Move to the world! :laughing:

1 Like

Your tutorial is great. I am telling all my friends about it. Thanks for that great effort.

Any chance this will be evolving over time. Maybe some guidance on how to use in conjunction with ??

All the best and keep up the great work.


Thank you Martin for your support!
We will keep updating and finally all the developers go through with our tutorial will be able to create their own dapp game - MoveCastle.
We also create world’s first cloud-based IDE for Libra Move - LibraIDE ( ). It already help developers from 100+ countries design, compile and test more thank 300k Libra move contracts. You can also have a double check on that~
We will release new lessons and features this week. :laughing:
So, don’t worried, we will keep working~


Hi Ling,

thanks so much on your nice tutorials, from that I learnt a lot.
The declarations like
modules: module {…}
scripts: public main ()
the words ahead of colons, it seems weird, but I am a newbie so that i’m not sure the coding style is following the Move code of conduct or not.

or does the declaration design only for learning use?
thanks so much.

Hi Celia~
Thank you for supporting our tutorials. We are glad you can gain fun and knowledge from our MoveCastle.:laughing:
Our tutorial is based on Libra Move’s version 61649eb ( We follow the coding style base on that commit.
We will bring the latest materials which follow Libra Move’s commit this week. Wish you have fun in the tutorial.:100:


Hi Ling,

Thanks for your quick reply. Appreciate a lot. but what I wanna know is that, as red circles (row 1 & row 6), is there any necessity to make this declaration? Thanks for help
me out.




1 Like

Hi Celia~
In the version 61649eb for Libra Move (, the answer is yes. It is necessary because otherwise it cannot compile. You can try this one in LibraIDE (
However I think the latest version of Libra Move is another style with a little bit change. We will bring the latest version into our tutorial next week~:laughing:
Move has some coding styles, it may changes in different versions. But in general, there are still some styles we need to follow.


MoveCastle’s new lesson is released!

  1. New UI/UX for homepage.
  2. Lesson 3 is released. (now MoveCastle has 3 lessons and 15 chapters)
  3. Optimize cell phone’s UI and add in auto complete features.
  4. Add in keynotes and course abstract.
  5. New UI/UX for tutorial.

    Let’s broadcast Libra Move to the world!


1 Like