/awesome-cosmos

Collection of Cosmos related resources

Creative Commons Zero v1.0 UniversalCC0-1.0

Awesome Cosmos Awesome

A community curated list of awesome projects related to the Cosmos ecosystem

The Cosmos SDK is a modular framework for building blockchain applications in Go. Gaia, the implementation of the Cosmos Hub, is built with the Cosmos SDK.

Contributing: Please read the Contributing guide. Thank you to all our contributors.

Disclaimer: This community-maintained repo does not reflect the views of any official entity.

Contents

Core Components

Documentation

Client Libraries

Go

  • Ignite CLI - All-in-one platform to build, launch, and maintain any crypto application on a sovereign and secured blockchain. Quickly bootstraps a new Cosmos SDK blockchain with UI and support to create new and work conveniently with existing Cosmos SDK modules.

JavaScript

Python

  • cosmpy - A Python client library for interacting with blockchains based on the Cosmos SDK.
  • pyCosmicWrap - A python3 wrapper around Cosmos API/RPC.
  • mospy - A Python library to create and sign transactions for Cosmos SDK based coins.
  • cosmospy-protobuf - A Python library containing all compiled protobuf files (works very good for grpc).
  • fx-py-sdk - The Cosmos Python client library.

Rust

Block Explorers

Visual Block Explorers

View Inter-Blockchain Communication (IBC) transfer activity. The map traces IBC transactions between different blockchains (called zones in the Cosmos Hub) to display accurate aggregate information about the pulse of the entire Cosmos ecosystem.

Terminal Block Explorers

Explore Cosmos SDK blockchains via a terminal.

  • gex - GEX In-Terminal Explorer.
  • cshtop - Cosmos htop , Blocks visualizer on terminal.
  • pvtop - Consensus visualizer on terminal.
  • tmtop - Htop-like visualiser of consensus inspired by pvtop that allows showing upgrade info, working with consumer chains and non-Cosmos chains and way more.

Chain Registry

A registry containing standardized metadata from most Cosmos chains.

Validators

Popular block explorers provide a list of active validators. The easiest entry point to view validator profiles is from a block explorer:

DYOR when choosing a validator. Consider delegating your tokens to validators outside of the top 20 to increase the decentralization of the network. This is also a good practice to avoid 0% commission validators and exchange validators.

Cosmos SDK Modules

The best place to find an accurate list of the Cosmos SDK modules is the project repository:

  • For a list of production-grade modules, see the List of Modules.
  • For a list of well-known third-party modules, see Cosmod.xyz

Monitoring

  • PANIC Monitoring and Alerting For Blockchains - An open source monitoring and alerting solution for Cosmos SDK, Substrate, and Chainlink-based nodes.
  • Prometheus Exporter - An integrated Prometheus exporter for the Cosmos SDK.
  • Cosmos Chains Dashboard - A Grafana dashboard to monitor Cosmos SDK and Tendermint-based blockchain nodes.
  • Chain Pulse - Relayed IBC packets monitor with Prometheus exporter.
  • missed-blocks-checker - Monitor validators' missed blocks on multiple Cosmos chains and send its notifications to Telegram.
  • Nodes Checker - Check your nodes status online, receive instant notification if something is wrong with your validator node.
  • Cosmon - Observability tool for Cosmos and other Tendermint applications.
  • Tenderduty - Comprehensive monitoring tool for Tendermint chains. Its primary function is to alert a validator if they are missing blocks, and more.
  • UpgradesWatchdog - SoftwareUpgradeProposal & GitHub Releases telegram monitoring tool.
  • cosmos-node-exporter - A Prometheus exporter to scrape data on your node sync status, Cosmovisor upgrades and GitHub version mismatches, useful for node operators and validators.
  • cosmos-wallets-exporter - A Prometheus exporter to scrape data on wallets balance, useful to get notified if your wallet balance is too low.
  • cosmos-validators-exporter - A Prometheus exporter to scrape data about a validator (missed blocks, delegators count, total staked amount, rankings, etc.)
  • cosmos-proposals-checker - A bot that sends you a notification on multiple Cosmos chains if your wallet hasn't voted on any proposal.
  • cosmos-transactions-bot - A bot that sends you notifications on any transactions you want to be subscribed to on multiple Cosmos chains.

Indexers

  • Cosmscan - An indexer engine for Cosmos chains.
  • interchain-indexer - A cosmos blockchain indexer in Python.
  • Cosmos Indexer - A generalized DB schema indexer with correlation and direct database indexing in Go.
  • BDJuno - All the chains' data that are queried from the RPC and gRPC endpoints are stored inside a PostgreSQL database on top of which GraphQL APIs can then be created using Hasura.

Frameworks

  • Cosmos SDK - A Framework for Building High Value Public Blockchains in Go.
  • Orga - ABCI framework for state machine transitions in Rust.
  • CosmosSwift - Build blockchain applications in Swift on top of the Tendermint consensus.
  • ABCI-RS - Rust crate for creating ABCI applications.
  • CosmRS - Framework for building Cosmos blockchain applications in Rust.

Virtual Machines

Modules or frameworks for virtual machines that run in the Cosmos SDK

  • Agoric SDK - Agoric JavaScript Smart Contract Platform.
  • CosmWasm - WASM Virtual Machine & Rust Smart Contracts.
  • Ethermint - Ethereum Virtual Machine.
  • Polaris - Modular Ethereum Virtual Machine.

IBC

Testing

  • interchaintest - E2E testing framework for IBC Chains.
  • atomkraft - E2E testing framework of Cosmos SDK blockchains.
  • python-iavl - IAVL inspection tool implemented in Python.
  • cosmos-sdk-codeql - CodeQL queries for common Cosmos SDK bugs.
  • tm-load-test - CometBFT load test application.
  • cosmosloadtester - Load tester for Cosmos SDK blockchains.
  • CometMock - Drop-in replacement for CometBFT in end-to-end tests.
  • quint - Executable specification language with delightful tooling.
  • apalache - APALACHE: symbolic model checker for TLA+ and Quint.

Templates

Templates to help you get started with building a Cosmos SDK blockchain.

  • ignite - Quickly bootstrap a new Cosmos SDK blockchain with UI and support to create new and work conveniently with existing Cosmos SDK modules.
  • cosmosregistry/example - Template and example repository of a Cosmos SDK module.
  • cosmosregistry/chain-minimal - Template and example of a minimal Cosmos SDK blockchain.
  • spawn - Generate a new Cosmos SDK blockchain with testing, GitHub integrations, and easy instant testnets.

Tools

CLI

  • tmkms - Key Management System for Tendermint validators.
  • cosmosvisor - Automates Cosmos SDK application binary upgrades.
  • cosmosvanity - CLI tool for generating Cosmos vanity addresses.
  • findaccount - Helps identify if an account exists on multiple Cosmos chains with the same address.
  • lens - CLI tool to interact with any Cosmos chain supporting the core Cosmos-SDK modules.
  • cosmology - CLI tool for making cryptocurrency trades, joining liquidity pools, and stake rewards on Osmosis.
  • multisig - CLI tool for managing multisig accounts on Cosmos SDK chains.
  • cosmos-genesis-tinkerer - CLI tool for modifying Cosmos genesis files.
  • airdrop-tools - CLI scripts to help distribute a variety of tokens from multiple formats.
  • cosmos.nix - Nix support for Cosmos and CosmWasm.

GUI

  • REStake - Auto-compounder app for Cosmos blockchains using Authz (source).
  • Cosmfaucet - Self-hosted faucet service for Cosmos based blockchain.
  • Cosmos Notifier - Governance notification tool for Telegram and Discord (source).
  • Skip:Go - IBC token transfers, automated swapping and multi-hop routing (source).

Bots

Node Operations

Utilities

  • Cosmos Cache - Optimize Cosmos queries by caching responses for predefined sets of time (regex).
  • cosmos-operator - Cosmos Operator is a kubernetes operator for managing cosmos nodes.
  • Wallet-generator - Manually generate a keypair + wallet addresses from mnemonic, pubkey + wallet addresses from privkey, or wallet addresses from pubkey. Accepts arbitrary HDpath (incl. cointype)

Ecosystem

The most up-to-date list of projects built using Cosmos SDK can be found on the Cosmos Directory.

Wallets

A list of wallets supporting Cosmos chains is https://cosmos.network/ecosystem/wallets.

Blogs

As the ecosystem grows, so does the content. DYOR and follow the projects you find interesting.

Disclaimer: This community-maintained repo does not reflect the views of any official entity.

Articles

Related