Skip to main content

Introduction

Applications built on Cartesi Rollups are intended to be deployed to public blockchains so users can access them. This can be done by taking advantage of a cloud-based infrastructure.

Deploying a Cartesi dApp involves two steps: deploying a smart contract that defines your dApp on-chain and then instantiating a node that runs the application's intended backend logic.

To facilitate the instantiation of such nodes, Cartesi provides an infrastructure for quickly getting them running in the cloud so the node can be run 24/7. This server will expose a single port to the internet so client applications can communicate with the node.

Public snapshots

For production deployments, applications must use public snapshots that are built through public workflows and published as public releases. This ensures transparency, reproducibility, trust, and auditability - essential for the trustless nature of blockchain applications.

Learn more about public snapshots

Deployment process

The deployment of an application involves building a Cartesi machine and deploying a smart contract to a supported network.

The cartesi build command produces the Cartesi genesis machine, which contains a hash representing the application and its initial state.

After deployment, any changes to the application code will generate a different hash and, hence, require another deployment.

There are two methods to deploy an application:

  1. Self-hosted deployment: Deploy the application node using your infrastructure
  2. Third-party service provider: Outsource running the application node to a service provider
important

Deployment with a third-party service provider is under development and will be available soon.

Supported networks

As stated above, the first step in deploying a new Cartesi dApp to a blockchain requires creating a smart contract on that network that uses the Cartesi Rollups smart contracts. Cartesi has already deployed the Rollups smart contracts to several networks for convenience.

The table below shows the list of all networks that are currently supported in the latest release:

Network NameChain ID
Ethereum Mainnet1
Sepolia11155111
Optimism10
Optimism Sepolia11155420
Arbitrum42161
Arbitrum Sepolia421614
Base8453
Base Sepolia84532
We use cookies to ensure that we give you the best experience on our website. By using the website, you agree to the use of cookies.