Wondertan / celestia-app

PoS chain powered by celestia-core (fork of tendermint) and the the cosmos-sdk

Home Page:https://celestia.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

celestia-app

Go Reference GitHub Release Go Report Card Lint Tests / Code Coverage codecov

celestia-app is a blockchain application built using Cosmos SDK and celestia-core in place of Tendermint.

Diagram

                ^  +-------------------------------+  ^
                |  |                               |  |
                |  |  State-machine = Application  |  |
                |  |                               |  |   celestia-app (built with Cosmos SDK)
                |  |            ^      +           |  |
                |  +----------- | ABCI | ----------+  v
Celestia        |  |            +      v           |  ^
validator or    |  |                               |  |
full consensus  |  |           Consensus           |  |
node            |  |                               |  |
                |  +-------------------------------+  |   celestia-core (fork of Tendermint Core)
                |  |                               |  |
                |  |           Networking          |  |
                |  |                               |  |
                v  +-------------------------------+  v

Install

  1. Install Go 1.18+

  2. Clone this repo

  3. Install the celestia-app CLI

    make install

Usage

# Print help message
celestia-appd --help

# Create your own single node devnet
celestia-appd init test --chain-id test
celestia-appd keys add user1
celestia-appd add-genesis-account <address from above command> 10000000utia,1000token
celestia-appd gentx user1 1000000utia --chain-id test
celestia-appd collect-gentxs
celestia-appd start

# Post data to the local devnet
celestia-appd tx payment payForData [hexNamespace] [hexMessage] [flags]

See https://docs.celestia.org/category/celestia-app for more information

Contributing

Tools

  1. Install golangci-lint
  2. Install markdownlint

Helpful Commands

# Build a new celestia-app binary and output to build/celestia-appd
make build

# Run tests
make test

# Format code with linters (this assumes golangci-lint and markdownlint are installed)
make fmt

# Regenerate Protobuf files (this assumes Docker is running)
make proto-gen

Careers

We are hiring Go engineers! Join us in building the future of blockchain scaling and interoperability. Apply here.

About

PoS chain powered by celestia-core (fork of tendermint) and the the cosmos-sdk

https://celestia.org

License:Apache License 2.0


Languages

Language:Go 98.7%Language:Shell 0.8%Language:Makefile 0.4%Language:Dockerfile 0.1%