1. Go to https://test.ton.org/ and read at least first 30 pages of ton.pdf, tvm.pdf, tblkch.pdf

  2. Go through basics of Free TON Blockchain

  3. Go to ton.live and overview blockchain structure, walk through blocks, accounts, messages, transactions

  4. Learn how to create your first contract, how to compile it, and get .tvc and .abi files.

  5. Now review all the use-cases that are possible to implement with SDK

  6. Go to SDK Quick Start, run it + read all inline documentation provided in hello sdk sample

  7. Open .abi file of hello contract and see its content and how message creation depends on it.

  8. For more detailed information go through most common use-cases documentation. Now it contains code snippets of 0 SDK version but the nuances are the same so it is still useful. Soon will update it with v1 snippets. To compare it with V1 use this migration guide https://www.notion.so/tonlabs/1-0-ee1c43d9488c4005842cafcaa1e082e6#2deca7db785240b5ba8309d24c50adb3 .

  9. Now explore GraphQL API documentation - what is it and why it is needed. Pay attention to the list of endpoints and query samples. Try to run some queries on net.ton.dev or main.ton.dev endpoints.

  10. Go to TON OS SE documentation page to find out more about its giver and differences with real network behaviour.

  11. Let's view the results of hello project execution on local node. Go to local node playground at http://localhost/graphql and query your account, transaction and messages with these queries:

    account

    query{
      accounts(filter: {
        id: {
          eq:"0:e1a5ce4ba61c9c180347e16eed553d85af37dc55f40cc8fb7d9c7cdff3c81e29"
        }
      }){
        id,
        workchain_id
        last_trans_lt(format:DEC)
        balance(format:DEC)
        boc
        code_hash
        data_hash
        
      }
    }
    

    transactions

    query{
      transactions(filter:{
        account_addr:{
          eq:"0:e1a5ce4ba61c9c180347e16eed553d85af37dc55f40cc8fb7d9c7cdff3c81e29"
        }
      })
      {
        id,
        account_addr,
        orig_status,
        end_status,
        out_msgs,
        lt(format:DEC)
      }
    }
    

    messages

    query{
      messages(filter:{
        dst:{
          eq:"0:e1a5ce4ba61c9c180347e16eed553d85af37dc55f40cc8fb7d9c7cdff3c81e29"
        }
      })
      {
        src
        dst
        id,
        msg_type,
        created_at
        created_lt(format:DEC)
        data
        boc
      }
    }
    

    Review the complete type structures on the right panel (DOCS button)

    https://s3-us-west-2.amazonaws.com/secure.notion-static.com/1c753de9-30ae-4d31-ad8a-092b0ff8ad04/Untitled.png

  12. For further exploration of SDK API check out API Reference.

  13. Go and explore other SDK samples

  14. To get understanding of SDK architecture visit Core Rust Library repository

  15. Check our SDKs developed by community for other languages

  16. Read about account address formats and account structure here https://test.ton.org/HOWTO.txt