Building on Cardano – Exploring Some Fundamental Tools for Cardano Developers

Cardano token symbol 3d illustration. Financial and business on blockchain technology.

Cardano aims to deliver a more sustainable, scalable, and secure way to create and run smart contracts, decentralized applications, and digital assets. As a developer looking to get started with building different solutions on Cardano, it is important to familiarize yourself with the various tools available for different domains and languages. This article puts together some of the tools you can use, grouped by categories:

Smart contract platforms

Developers use these platforms and tools to write, test, and deploy smart contracts on Cardano. Some examples are:

  • Plutus: A programming language and platform for writing smart contracts on Cardano. It is based on Haskell and allows developers to write both on-chain and off-chain code in the same language. It also provides a playground web application for testing and simulating smart contracts.
  • Marlowe: A domain-specific language and platform for writing smart contracts on Cardano. It is designed for financial contracts and allows non-programmers to create and execute smart contracts using a graphical interface or a simple text format. It also provides a playground web application for testing and simulating smart contracts.
  • IELE: A virtual machine and assembly language for running smart contracts on Cardano. It is based on LLVM and supports multiple high-level languages, such as Solidity, Yul, or Plutus. It also provides a compiler and a testnet for deploying and running smart contracts.
  • Glow: A domain-specific language for writing decentralized applications on Cardano. Glow is based on a functional and declarative paradigm, and allows developers to write concise and portable code that can run on different blockchains. Glow also provides a web-based IDE, where users can write, test, and deploy applications using a browser.

SDKs and APIs

These are libraries and frameworks that provide high-level interfaces to interact with the Cardano blockchain, such as creating transactions, querying the ledger state, or deploying smart contracts. Some examples are:

  • cardano-serialization-lib: A library for serialization and deserialization of Cardano data structures, such as addresses, transactions, and certificates. It supports multiple languages, such as JavaScript, Python, Rust, and WebAssembly.
  • cardano-wallet: A Haskell library and command-line interface for managing wallets and performing payments on Cardano. It also provides a REST API for integration with other applications.
  • cardano-graphql: A GraphQL API for querying data from the Cardano blockchain, such as blocks, transactions, stake pools, and metadata. It uses cardano-db-sync to synchronize with the node and store the data in a PostgreSQL database.
  • cardano-rosetta: An implementation of the Rosetta API for Cardano, which is a standard interface for integrating with different blockchains. It allows developers to build applications that are compatible with multiple networks, such as wallets, explorers, or exchanges.
  • Cardano testnet: A network that simulates the mainnet behavior of Cardano but uses test ada instead of real ada. It allows developers to test their applications or services before deploying them on the Cardano blockchain.

Stake pool tooling

Stake pool tooling help operators to set up, monitor, and optimize their pools on Cardano. These include:

  • cncli: A community-built command-line tool for interacting with the Cardano node. It provides features such as syncing the ledger state, calculating the leader schedule, sending tip information to pooltool.io, and generating pool reports.
  • gLiveView: A script that displays live information about the node and the network, such as CPU usage, memory usage, slot number, epoch number, block height, and peers. It also shows the status of the stake pool, such as active stake, live stake, rewards, and performance.
  • pool.vet: A web service that analyzes stake pools and provides feedback on their configuration, metadata, performance, and security. It helps stake pool operators to identify and fix potential issues with their pools.

Explorers

These are tools that help developers and users to explore and visualize data from the Cardano blockchain, such as blocks, transactions, stake pools, or tokens. Some examples are:

  • cardanoscan.io: A web-based explorer that provides detailed information about the Cardano blockchain, such as blocks, transactions, addresses, stake pools, assets, epochs, slots, and parameters. It also allows users to search by various criteria, such as hash, address, pool ID, or asset ID.
  • pooltool.io: A web-based explorer that provides information about stake pools on Cardano, such as active stake, live stake, rewards, performance, fees, and metadata. It also allows users to compare and rank pools by various metrics, such as return on stake, pledge, or saturation.
  • cardanoassets.com: A web-based explorer that provides information about native tokens on Cardano, such as name, symbol, policy ID, minting transactions, holders, and metadata. It also allows users to search and filter tokens by various criteria, such as name, symbol, or policy ID.

Data services

These are tools that help developers to access, store, analyze, or visualize data from the Cardano blockchain or other sources. Some examples are:

  • cardano-db-sync: A component that follows the Cardano chain and stores blocks and transactions in a PostgreSQL database. It also stores aggregated data such as stake pools, epochs, slots, rewards, and metadata.
  • cardano-explorer-api: A REST API for querying data from the Cardano blockchain, such as blocks, transactions, addresses, stake pools, assets, epochs, slots, and parameters. It uses cardano-db-sync as the backend database.
  • cardano-ogmios: A WebSocket-based interface for interacting with the Cardano node. It provides features such as chain synchronization, ledger queries, transaction submission, and protocol parameters. It also supports JSON and TypeScript data formats.
  • Dandelion APIs: A platform that provides scalable and secure APIs for accessing data from the Cardano blockchain, such as blocks, transactions, addresses, stake pools, assets, epochs, slots, and parameters. It also provides analytics and insights on the network activity and performance.

Blockchain integration tools

These are tools that help developers connect their applications or services to the Cardano blockchain or other blockchains. Some examples are:

  • Blockfrost: A platform that provides a REST API and WebSocket API for accessing data from the Cardano blockchain. Blockfrost allows developers to easily integrate Cardano into their applications, without having to run and maintain their nodes. Blockfrost supports both the mainnet and the testnet and provides endpoints for querying the blockchain state, transactions, addresses, stake pools, assets, metadata, and more. Blockfrost also provides SDKs for various languages, such as JavaScript, Python, Java, and .NET, to simplify the integration process.
  • OrbitLens: A platform that provides cross-chain data analytics and interoperability solutions for Cardano and other blockchains. It also provides features such as transaction monitoring, address tracking, asset discovery, and smart contract verification.
  • pTokens: A platform that enables cross-chain interoperability of any asset between any blockchain. It allows users to move their tokens across different networks without intermediaries or centralized exchanges.

Wallets

These are applications or services that help users to store, manage, or transfer their ada or other tokens on Cardano. Some examples are:

  • Daedalus: A full-node desktop wallet for Cardano. It allows users to send and receive ada or other tokens, delegate their stake to stake pools, access decentralized applications (DApps), and manage hardware wallets.
  • Yoroi: A light-weight wallet for Cardano. It allows users to send and receive ada or other tokens, delegate their stake to stake pools, access decentralized applications (DApps), and manage hardware wallets. It is available as a browser extension or a mobile app.
  • Nami: A browser-based wallet for Cardano. It allows users to send and receive ada or other tokens, delegate their stake to stake pools, access decentralized applications (DApps), and mint native tokens.
  • CCWallet: A web-based wallet for Cardano. It allows users to send and receive ada or other tokens, delegate their stake to stake pools, access decentralized applications (DApps), and mint native tokens.

Native tokens

These are user-defined tokens that can be created, transferred, or burned on the Cardano blockchain without the need for smart contracts. They can represent any type of asset, such as fungible tokens (e.g., currencies, stablecoins, utility tokens) or non-fungible tokens (e.g., collectibles, art, gaming items). Some examples are:

  • SpaceBudz: A collection of 10,000 unique pixel art astronauts on the Cardano blockchain. Each SpaceBud has a unique combination of traits and accessories that determine its rarity and value.
  • CardanoBits: A collection of 10,000 unique pixel art characters on the Cardano blockchain. Each CardanoBit has a unique combination of traits and accessories that determine its rarity and value.
  • Cardania: A collection of 10,000 unique digital cards on the Cardano blockchain. Each card represents a character from the fictional world of Cardania, with different attributes and abilities.
  • SingularityNET AGIX: A utility token that powers the SingularityNET platform, which is a decentralized network of artificial intelligence (AI) services. AGIX can be used to pay for AI services, stake for governance rights, or participate in network incentives.

These are some of the tools you can use for building different solutions on Cardano. You can find more tools and resources on the Cardano Developer Portal, which is a hub for developers to learn, build, and collaborate on Cardano. It serves as a comprehensive resource that provides an overview of Cardano, its underlying technologies, and the components that make up the Cardano ecosystem. It also includes builder tools, technical concepts, and documentation to help you get started.

Putting it all together

As you can see, Cardano offers a rich and diverse set of SDKs and tools for developers, covering different languages, technologies, and domains. These SDKs and tools enable developers to easily and securely build and run smart contracts, decentralized applications, and digital assets on Cardano, and leverage the benefits of its layered architecture, such as scalability, sustainability, and interoperability. Whether you are a beginner or an expert, a frontend or a backend developer, a wallet or a stake pool operator, you will find the right SDKs and tools for your needs on the Cardano ecosystem.

Leave a Reply

Your email address will not be published. Required fields are marked *

Related Posts