cosmos-developer / baby

Inspired by Jacob Gadikian old blockchain project aimed at teaching Cosmos. Baby blockchain is intended as a guide for people to learn Cosmos
13 stars 21 forks source link

baby

baby is a blockchain built using Cosmos SDK and Tendermint and created with Ignite CLI.

Inspired by Jacob Gadikian old blockchain project aimed at teaching Cosmos. Baby blockchain is intended as a guide for people to learn Cosmos.

Baby is intended to be an open source interactive learning with CI/CD to confirm the work of leaners.

Baby is intended to be easy and captivating to learn with 5 minutes lessons only.

Baby learning path includes:

  1. deploying a local testnet Specs here
  2. writing claims module Specs here (building)

SDK Vietnam community class

I. Chapter 1: Chain Interaction

Purpose: Chain interaction serves as cornerstone in helping a person get familiar with Cosmos SDK

  1. Group 1: Starting a chain
  1. Group 2: Interacting with a chain through cli
  1. Group 3: Interacting with a chain through API
  1. Group 4: Chain configuration
  1. Group 5: Setting up a validator

II. Chapter 2: Building a custom module

  1. Group 1: Protobuf

    • Lesson 1: Write a protobuf struct in Cosmos
    • Lesson 2: Generate protobuf struct
  2. Group 2: Write a chain module

    • Lesson 3: Integrate module into app.go
    • Lesson 4: Add new chain module data structure
    • Lesson 5: Add new chain module logic
    • Lesson 6: Add chain module CLI interaction
    • Lesson 7: Add handling for chain module logic genesis state
    • Lesson 8: Expose new chain module logic in module.go
    • Lesson 9: Integrate new chain module logic to app.go
  3. Group 3: Testing

    • Lesson 10: Add unit testing
    • Lesson 11: Add system testing
    • Lesson 12: Linting
  4. Group 4: Scripts

    • Lesson 13: start node and local-net script
    • Lesson 14: development script in Makefile
  5. Group 5: Capstone project

    • Lesson 15: Practice building a simple text module part 1
    • Lesson 16: Practice building a simple text module part 2

III. Chapter 3: Building CosmWasm contracts

  1. Group 1: Basic setup
    • Lesson 1: CosmWasm introduction
    • Lesson 2: Bootstrap a basic CosmWasm dapp