Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Why Build Universal Apps #474

Merged
merged 10 commits into from
Sep 26, 2024
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added public/img/docs/why-custody.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added public/img/docs/why-orchestration.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 4 additions & 0 deletions src/pages/developers/apps/_meta.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,9 @@
"intro": {
"title": "Universal App Basics",
"description": "Build universal apps that can be called from any blockchain"
},
"advantages": {
"title": "Why Build Universal Apps?",
"description": "Powerful chain abstraction, native token transfer, familiar developer experience and more"
}
fadeev marked this conversation as resolved.
Show resolved Hide resolved
}
134 changes: 134 additions & 0 deletions src/pages/developers/apps/advantages.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,134 @@
ZetaChain is a platform that empowers developers to create universal
applications capable of seamlessly interacting with any blockchain. Whether your
application needs to operate on Ethereum, BNB Chain, Solana, TON, or even
non-smart contract blockchains like Bitcoin, ZetaChain provides the
infrastructure to make this possible with minimal friction. By unifying the
diverse blockchain ecosystems under a single development framework, ZetaChain
enables your apps to function across all of them effortlessly.
fadeev marked this conversation as resolved.
Show resolved Hide resolved

## Chain Orchestration

![https://excalidraw.com/#json=H_5eUXC-4m4FnbNoPIDoC,WqRygXYCYvAmlbTTqhc3Bg](/img/docs/why-orchestration.png)
fadeev marked this conversation as resolved.
Show resolved Hide resolved

One of the standout features of ZetaChain is its ability to orchestrate complex
transactions across multiple blockchains from a single smart contract. Universal
apps built on ZetaChain can manage incoming token transfers and contract calls
from different blockchains and initiate outgoing transactions to connected
networks—all within a unified framework.

For example, suppose you have an application that needs to interact with both
Ethereum and Solana. Traditionally, you would need to write separate codebases
and manage intricate communication protocols between the two chains. With
ZetaChain, your universal app can handle these operations seamlessly,
coordinating transactions across chains without the need for multiple contracts
or complex interoperability solutions.
fadeev marked this conversation as resolved.
Show resolved Hide resolved

This chain orchestration capability simplifies the development process, reduces
the potential for errors, and ensures that your application can scale as it
integrates with more blockchains.

## Forwards Compatibility
fadeev marked this conversation as resolved.
Show resolved Hide resolved

Deploying an app on ZetaChain means it automatically becomes connected to all
networks linked to ZetaChain. As new blockchains are added to the ZetaChain
ecosystem, your universal app gains compatibility with these networks without
any additional effort or modifications to your contract's source code.

fadeev marked this conversation as resolved.
Show resolved Hide resolved
This forward compatibility is a significant advantage, as it future-proofs your
application. You don't have to anticipate which blockchains might become popular
or widely adopted in the future; your app will be ready to interact with them as
soon as they are integrated into ZetaChain. This not only saves development time
fadeev marked this conversation as resolved.
Show resolved Hide resolved
but also ensures that your app remains relevant and accessible to users across
different blockchain networks.

This feature simplifies maintenance, as you don't need to update your contracts
or redeploy your application whenever a new blockchain is connected. Your app
can continue to operate smoothly, providing a consistent user experience even as
the underlying blockchain landscape evolves.

## Transfer Native Tokens

![https://excalidraw.com/#json=xico4ELR7yTlLxR4kDK25,6GRqZsXB_gDM4wFvb_fSpA](/img/docs/why-custody.png)
fadeev marked this conversation as resolved.
Show resolved Hide resolved

One of the core capabilities of universal apps on ZetaChain is the ability to
transfer value using native tokens across all connected chains. This means users
can perform transactions involving the actual native assets of each blockchain,
rather than wrapped or synthetic versions.

For example, a user can send native USDC from Ethereum directly to Polygon, or
swap native BTC from the Bitcoin network for PEPE tokens on Ethereum. This
cross-chain token transfer functionality enhances liquidity and provides a more
seamless experience for users, who no longer need to rely on intermediaries or
complex token wrapping mechanisms.
fadeev marked this conversation as resolved.
Show resolved Hide resolved

To facilitate these transfers, universal apps have access to unified liquidity
pools on ZetaChain. These pools aggregate liquidity from all connected chains,
containing tokens that have been transferred to ZetaChain from their respective
networks.

Adding liquidity to these unified pools involves transferring tokens to the
custody of ZetaChain validators on the connected chains. For instance, ZetaChain
validators hold custody of ETH, USDC, and other tokens on Ethereum. This custody
mechanism is secured through robust consensus protocols and validator
incentives, ensuring the safety of the assets.

This system allows users to send tokens to and from universal apps, as well as
directly between connected chains, without the need for centralized exchanges or
third-party bridges. It streamlines the user experience and reduces the risks
associated with cross-chain transactions, such as double-spending or transaction
failures.

By using native tokens, users benefit from the inherent properties of those
assets, including their security features, consensus mechanisms, and existing
network effects. This enhances trust and reliability in cross-chain operations
conducted through ZetaChain-powered universal apps.

## Familiar Developer Experience

ZetaChain runs smart contracts on its Universal Ethereum Virtual Machine (UEVM),
which is fully compatible with Ethereum's EVM. This means developers can write
smart contracts in Solidity or other EVM-compatible languages, leveraging their
existing knowledge and expertise.

The platform supports popular development tools like Foundry, Hardhat, Slither,
and Ethers.js right out of the box. This compatibility allows developers to use
familiar workflows, debugging tools, and testing frameworks, making the process
of building universal apps more efficient and less error-prone.

For instance, if you're accustomed to using Hardhat for compiling and deploying
smart contracts on Ethereum, you can continue to use it seamlessly with
ZetaChain. This reduces the learning curve and accelerates the development
process, enabling you to focus on building innovative features rather than
grappling with new tooling or languages.
fadeev marked this conversation as resolved.
Show resolved Hide resolved

## Gasless EVM Execution Environment

Another compelling feature of ZetaChain is its Gasless EVM Execution
Environment. Universal apps run on ZetaChain's EVM and can be called by users
and contracts from all connected chains. When a universal app is called from a
connected chain, it requires gas payment only on that connected chain. Execution
on ZetaChain does not impose any additional fees, making ZetaChain a
cost-effective, gasless environment for deploying contracts. This significantly
reduces expenses for end-users and enhances the accessibility of your
applications.

For end-users, the gasless execution environment means they can interact with
your universal app without worrying about incurring high transaction fees on
multiple chains.

Traditional message-passing solutions often lack a dedicated execution
environment, meaning every contract call requires gas payments on both ends.
This not only increases costs but also adds layers of complexity to transaction
handling. ZetaChain's gasless environment eliminates these hurdles, providing a
smoother and more efficient pathway for cross-chain contract execution.
fadeev marked this conversation as resolved.
Show resolved Hide resolved

## Conclusion

ZetaChain provides a comprehensive solution for developing universal
applications capable of interacting with any blockchain. Powerful chain
orchestration, forward compatibility, native token transfers, and gasless
execution environment significantly reduce the technical and financial barriers
typically associated with cross-chain app development. By offering a familiar
developer experience and ensuring seamless scalability as new blockchains are
added, ZetaChain future-proofs applications, making them accessible, efficient,
and ready for widespread adoption.
fadeev marked this conversation as resolved.
Show resolved Hide resolved
Loading