Introduction to Agoric

May 13, 2024

Introduction To Agoric

Skilled blockchain developers remain in short supply, in part due to the complexities of the technology as well as its various programming languages. One of the blockchain platforms that has deliberately sought to address this pain point is Agoric. By utilising the world’s most popular programming language JavaScript for smart contract development, Agoric aims to make blockchain development more accessible to a broader range of developers and bridge the gap between traditional web development and blockchain technology. 

Agoric is a Layer 1 blockchain that leverages the Cosmos SDK and utilises JavaScript, a widely familiar programming language, for smart contract development as a way to By using like JavaScript, Agoric aims to make blockchain development more accessible to a broader range of developers, and in so doing, address the entry barriers posed by complex blockchain programming languages.

The platform is first and foremost designed to simplify the integration of secure and efficient smart contracts across different blockchains, and provide a streamlined option for developers looking to build complex financial applications without the steep learning curve typically associated with blockchain development.

This article will explore Agoric’s technological foundations, its main features and the advantages it offers, practical applications, and end with a summary of the latest roadmap developments.


What is Agoric? Simplifying Blockchain Development with JavaScript

In short, Agoric is a Cosmos SDK Layer-1 blockchain and JavaScript-based smart contract platform for building multi-chain, decentralised applications (dApp) with a clear focus on making blockchain development more accessible and versatile. Traditional blockchain environments often require knowledge of niche programming languages like Ethereum’s Solidity, which can act as a barrier to Web2 developers from transitioning into the DeFi and broader blockchain development spaces. Agoric stands out by leveraging the widely-known JavaScript language to significantly lower barriers to entry for the vast pool of web developers eager to explore and build within the blockchain space. By leveraging an environment where developers can use a familiar programming language, Agoric seeks to reduce the learning curve and instead accelerate the development of applications. 

Agoric Logo

Below we summarise the key benefits that Agoric brings:

Simplifying Smart Contract Development

One of the core challenges in blockchain development is the steep learning curve associated with specialised programming languages such as Solidity. Agoric tackles this issue by allowing developers to write smart contracts in JavaScript, a language with over 17 million developers worldwide: drastically reducing the barrier to entry and accelerating the development cycle for new blockchain applications.

  • Rapid Development: Developers can prototype and deploy blockchain solutions faster using a language they are already familiar with.
  • Broader Innovation: Accessibility invites a more diverse range of creators and innovators to the blockchain space, possibly fostering a rich ecosystem of applications.

Enhancing Economic Security

Smart contracts on blockchain platforms often suffer from vulnerabilities that can lead to significant financial losses. Agoric introduces a novel contract framework, Zoe, which ensures that participants in a contract can never lose the digital assets they put in unless explicitly agreed upon in the terms, offering an additional layer of security that protects against both unintended bugs and malicious actions.

  • User Protection: Offers a safer environment for users to engage with smart contracts, building trust and encouraging wider adoption.
  • Reduced Risk for Developers: Lowers the stakes of deploying smart contracts by minimising the potential for catastrophic errors.

Facilitating Seamless Multi-chain Operations

Blockchain ecosystems are notoriously fragmented, with limited interoperability between different networks. Agoric employs Dynamic IBC (explained in the next section) to facilitate more fluid interactions between chains, allowing for the movement of assets and information across different blockchain systems without the need for complex bridging protocols.

  • Increased Liquidity: Assets can flow more freely across chain boundaries, enhancing the liquidity available to decentralized applications.
  • Unified Experience: Users enjoy a smoother, more cohesive experience that aligns with the seamless interaction models of traditional web applications.

Building a Composable DeFi Ecosystem

Through its ERTP framework (more on this below), Agoric enables developers to create and manage digital assets in a highly composable environment, supporting everything from simple token transfers to complex financial instruments like futures and options.

  • Flexibility in Asset Management: Developers can easily define and handle a diverse range of assets.
  • Innovative Financial Products: Agoric supports the creation of sophisticated DeFi products and the potential for expanding the market with novel offerings.

The Tech Behind Agoric

Agoric is built on a solid foundation of tech that includes several key components specifically designed to address complexities and entry barriers to development with enhanced security, usability, and flexibility for cross-chain blockchain applications, from  financial services to NFT marketplaces. Central to Agoric’s approach is the integration of familiar web development practices into the blockchain environment, which is made possible through several key technologies:

  • Hardened JavaScript: Agoric utilises a specialised variant of (Hardened) JavaScript, engineered to prevent common vulnerabilities by restricting certain language functionalities which makes it suitable for the precise demands of distributed computing. As it reduces the risks of unintentional code behaviours, developers can concentrate on utilising their existing JavaScript skills to quickly start building secure blockchain applications.

  • Cosmos SDK and Tendermint: Agoric builds upon the Cosmos SDK for application-specific functionalities, underpinned by the Tendermint consensus engine for a high-performance, scalable, and secure underlying framework that ensures fast transaction processing and finality.

  • SwingSet VM: At the core of Agoric is the SwingSet Virtual Machine (VM), which runs Hardened JavaScript and structures the execution into secure compartments known as “vats.” Each vat operates independently, encapsulating its state and execution to bolster security and robustness. Within these vats, operations proceed synchronously, adhering to JavaScript’s conventional execution flow. However, interactions between different vats are handled asynchronously, preventing delays or security breaches from affecting the system’s overall integrity. As such, the design aims not only to enhance security by isolating different parts of an application but also maintain performance by ensuring that issues in one vat don’t stall the entire system, making it particularly well-suited for the demanding environment of blockchain applications.

  • Dynamic Inter-Blockchain Communication (dIBC): An enhancement of the standard IBC protocol that facilitates immediate deployment of new blockchain protocols without the need for platform upgrades or governance votes. Unlike traditional IBC, dIBC allows developers to quickly integrate and utilise new functionalities through smart contracts that use standard JavaScript libraries to interpret and execute these protocols, which in turn can significantly reduce barriers to innovation by enabling seamless updates and rapid introduction of new features across chains.

  • Electronic Rights Transfer Protocol (ERTP): ERTP is Agoric’s native token standard for handling digital assets, including fungible and non-fungible tokens. It provides a streamlined way to issue and manage digital rights as well as create digital assets that are easy to transfer and compose, and is built to support a high degree of security and liquidity particularly useful for DeFi applications.

  • Zoe: Agoric’s smart contract capabilities comes from Zoe, a smart-contract framework that operates as an escrow mechanism for secure transaction execution. Through its “Offer Safety” function, Zoe contracts guarantees that users either get what they explicitly specified in their contract or receive a full refund: a feature that reduces the risks associated with smart contracts by ensuring users can safely make and withdraw offers without the fear of bugs or malicious intent.
Each component of Agoric’s technology stack is designed to enhance the ease of use and safety for both developers and users. By reducing the complexity traditionally associated with blockchain development and focusing on powerful, developer-friendly tools, Agoric aims to solve critical issues related to the complexity of blockchain programming and secure execution of smart contracts. By leveraging JavaScript, Agoric significantly lowers the barrier to entry for developers and promotes a broader adoption of blockchain technology.

Agoric Use Cases

Agoric’s technology stack not only simplifies the development of blockchain applications but also supports a broad array of practical use cases. These use cases leverage the platform’s robust security, interoperability, and ease of use, allowing developers to create innovative solutions in various sectors. Here, we highlight a few of the main categories fit for Agoric:

  • Decentralised Finance (DeFi): Agoric is particularly suited for DeFi applications due to its secure environment and interoperability features; allowing developers to build complex financial instruments such as derivatives, automated market makers, and stablecoins. The platform’s ability to securely manage and trade digital assets across chains is crucial for DeFi protocols that require integration of diverse assets and liquidity sources.

  • NFT Marketplaces: With JavaScript, developers can create and manage non-fungible tokens (NFTs) for digital art, collectables, and more. Agoric’s ERTP, in turn, facilitates the creation, sale, and trading of NFTs in a secure environment, ensuring that transactions are verifiable and assets are not duplicated.
  • Subscriptions and Payments: Utilising Agoric’s ability to handle long-lived contracts and scheduled transactions, developers can build blockchain-based subscription services. These services could automate periodic payments and manage user subscriptions directly on the blockchain, increasing transparency and reducing the potential for disputes or fraud. Similarly, the platform’s smart-contract framework Zoe offers robust escrow mechanisms, critical for secure, trust-free transactions in marketplaces or between untrusted parties.

  • Supply Chain Tracking: Leveraging the security and transparency of blockchain, companies can use Agoric to build systems that track the provenance and status of goods across supply chains.

Spotlight on IST: Agoric’s Stablecoin

A central component of Agoric’s ecosystem is the Inter Stable Token (IST), an over-collateralised stablecoin that plays a key role in the platform’s functionality and economics; designed to provide a stable medium of exchange and fee payment mechanism across the Agoric network. Below we list the main functions and mechanisms of IST:

  • Fee Token: IST serves as the primary token for paying transaction fees within the Agoric ecosystem. This usage ensures that network operations are smooth and cost-effective for users, enabling a broad range of DeFi applications.
  • Vaults and Collateralisation: Users can mint IST by locking up approved collateral in vaults. The system assesses the value of the collateral and allows users to mint a corresponding amount of IST based on a predetermined collateralisation ratio to ensure that IST remains over-collateralised as a safeguard against market volatility.
  • Parity Stability Module (PSM): The PSM enables users to swap approved stablecoins for IST at a 1-to-1 ratio, a feature that not only facilitates easy onboarding and offboarding of capital but also helps maintain IST’s peg to the US dollar by providing an arbitrage mechanism that stabilises its price.
  • Governance and Economic Stability: IST issuance and management are governed by BLD token holders (more on BLD in the next section), who participate in decision-making processes regarding the governance of the platform; including setting parameters for collateral types, minting limits, and fees.

By providing a stable, scalable, and secure form of currency, IST enables developers and users to engage confidently in financial activities without the usual risks associated with price volatility in other cryptocurrencies—allowing instead for fluid asset transfers and interactions across different blockchains.

The Role of the BLD token in the Agoric Ecosystem

BLD is the native staking and governance token of the Agoric blockchain, and serves a key role in maintaining the network’s security and facilitating community-driven governance. As such, the BLD token is integral to the economic and operational structure of the Agoric platform through its two core functions:

  • Staking for Network Security: BLD holders can stake their tokens to help secure the network. Staking BLD involves delegating tokens to validators who are responsible for maintaining the blockchain’s integrity, processing transactions, and participating in consensus. In return for staking their tokens, BLD holders receive rewards based on transaction fees and other network activities.
  • Governance Participation: BLD also gives its holders the right to participate in the governance of Agoric; meaning token holders can propose, vote on, or veto changes to the protocol, including upgrades and parameter adjustments on inflation rates, staking rewards, and other economic parameters that can impact the utility and value of BLD.

Conclusion: Summary and Looking Ahead

Agoric stands out for its JavaScript integration to blockchain development, aiming to enable a wider range of developers to participate in the industry. By building on a foundation that prioritises ease of use, security, and cross-chain functionality, Agoric makes it easier for developers to build sophisticated dApps with less friction.

  • Developer Accessibility: Agoric lowers the barrier to entry for developers by utilising (Hardened) JavaScript, a familiar and widely-used programming language with enhanced security.

  • Secure and Interoperable: With its SwingSet VM and Dynamic IBC, Agoric ensures not only the secure isolation of contract executions but also seamless interoperability within the Cosmos network and beyond.

  • Innovative Smart Contracts: Zoe, Agoric’s smart-contract framework, offers developers the tools to build secure dApps that can handle complex transactions with a focus on safety.

In the first quarter of 2024, Agoric implemented significant updates to its platform. The Zoe contract framework received its first major upgrade, enhancing future feature development and the overall robustness of the Agoric chain. In collaboration with Mystic Labs, Agoric supported the building of Calypso, a cross-chain transfer and staking application. Additionally, the Inter Protocol expanded its collateral options and saw its total value locked increase on-chain. Agoric also integrated a new indexing capability through a partnership with Subquery, improving data accessibility for dApp developers; and upgraded the Cosmos SDK and IBC versions to support upcoming features.

For the second quarter of 2024, Agoric plans to launch its Orchestration APIs, aimed at enhancing support for IBC-connected chains with features like Interchain Accounts, Queries, and Hooks. The ongoing upgrades to the Cosmos SDK and IBC from Q1 will continue to support the deployment of these orchestration features. A significant release, the vTransfer module, will enable JavaScript smart contracts on Agoric to connect to IBC, facilitating core functionalities for developers. Agoric will also integrate Packet Forward Middleware to enable efficient multihop IBC transfers. Additionally, the platform will release an example application to help developers quickly learn to build on Agoric, and continue supporting third-party developers in launching their applications on the chain.

To keep up with the latest on Agoric, follow their twitter @agoric.