A Go library and CLI tool for interacting with Cosmos SDK and IBC blockchains, designed for building custom clients and automation.
Lens is a Go library and command-line tool designed to interact with any blockchain that uses the Cosmos SDK, including the Cosmos Hub and IBC chains. It provides a unified API for querying chain data, managing keys, and broadcasting transactions, simplifying the development of Cosmos-based applications. The project packages best practices into a reusable module, making it easier to build complex clients without dealing with low-level details.
Go developers building applications on Cosmos SDK blockchains, such as trading bots, indexers, server-side automation, and transaction automation tools. It's also suitable for teams needing a reliable client library for interacting with multiple IBC chains.
Developers choose Lens because it offers a standardized, well-tested interface for Cosmos client development, reducing boilerplate and potential errors. Its integration with the Cosmos SDK keyring and chain registry ensures security and ease of configuration, while the Go library enables flexible customization for advanced use cases.
⚛️❤️👁 Brought to you by the LensCrafters
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides a consistent CLI and Go API for querying and transacting with any Cosmos SDK chain, abstracting away chain-specific complexities as highlighted in the chain interaction features.
Integrates with the Cosmos SDK keyring, supporting mnemonics restoration and secure key storage, which simplifies key handling for transactions and queries.
Uses a YAML config file with a built-in registry from cosmos/chain-registry, allowing easy addition and switching between chains like Cosmos Hub and Osmosis without code changes.
Can be imported as a Go module to build trading bots, indexers, and automation tools, enabling complex client development with minimal boilerplate, as shown in the examples repository.
The repository is explicitly marked as inactive by Strangelove Ventures, meaning no new features, bug fixes, or security updates, posing a significant risk for production use.
Requires setting up YAML configs and managing keys manually, including editing the config file for non-default keys, which can be error-prone and time-consuming.
The README is brief, and users must rely on external examples repositories, which might not cover advanced use cases or be maintained, increasing the learning curve.