This page documents a specific use case of Kurtosis: core protocol developers who are building tooling for cross-chain applications (bridges, aggregation tooling, chain-agnostic oracles, SDKs, etc).

With Kurtosis, these engineers can reduce their code surface area and maintenance burden when spinning up private e2e testing environments that use a combination of third-party node software (the chains they interact with) and their own infrastructure (relayers, oracles, etc), via the DRY-principles and composability features of Kurtosis packages.

User Personas:

Use case/persona Common pain points How Kurtosis does things differently
Cross-chain bridge developers Testing cross-chain bridge applications in a controlled, repeatable way requires spinning up L1 node software for every L1 the bridge interacts with, in addition to the relay and oracle, or centralized service infrastructure required to actually run the bridge. Engineers building test environments must comprehend the node configuration and spin up architecture for every L1, and how to modify them as they change the conditions of their testing environments. Kurtosis enables cross-chain bridge developers to specify the configurations of L1 client software in a DRY and easily modifiable format, so that creating multiple test environments across many chains is a low maintenance task.

Because of the composability feature of Kurtosis, you can fork/import existing Kurtosis packages for client nodes written by either you, or by core client teams, in order to keep a single source of truth for how to spin up and configure each L1. | | Multi-chain dApp developers | It is difficult to stand up environments that simulate multiple blockchains and their behaviors for developers to test cross-chain functionalities. | Kurtosis enables multi-chain builders to simulate and validate that their business logic functions as intended across various networks and VMs in an representative but also private and isolated environment (especially for non-public or proprietary logic).

Because of the composability feature of Kurtosis, you can import only the pieces of your system you need to stitch together the environment you want. | | Infrastructure/Middleware Developers | Building backend services, or sophisticated middleware, which interacts with L1 RPC endpoints often requires full control over the deployed node service for useful prototyping, debugging, and testing. | Kurtosis allows infrastructure and middleware developers to treat the deployment logic of their private testnets as a black box, while still having the controls via https://docs.kurtosis.com/explanations/reusable-environment-definitions/#what-does-a-reusable-solution-look-liketo customize the environment to their own needs. |

🚀 Existing packages to work from as examples (expand each bullet to learn more)