Overview
Key Components
The Atlas Protocol comprises several interconnected components, each playing a crucial role in the system:

- Auctioneer: Manages the bidding process and selects the most beneficial solutions for execution.
- Operations Relay: Facilitates off-chain communication between system participants, enhancing privacy and performance.
- Solver Network: A decentralized network of entities that compete to provide optimal solutions for User Operations.
- Bundler: Aggregates operations into single transactions for efficient on-chain execution.
- Atlas Smart Contracts: The central smart contracts that manages the execution of operations and ensures the sequence integrity.
Click on each of the above components to learn more about their roles and duties.
System Architecture
The typical Atlas interaction lifecycle is illustrated as follows:

- A user generates a user operation, signs it, and sends it to the Auctioneer.
- The auctioneer validates the user operation, and forwards it to the Operations-Relay. The auction is officially started.
- The Operations-Relay broadcasts the user operation to all connected solvers.
- Solvers compete and respond with their operations.
- The Operations-Relay sends all collected solver operations to the Auctioneer.
- The Auctioneer finalizes the auction and sends all required operations to the bundler.
- The bundler creates a single transaction containing all the operations and submits it to the blockchain.
Atlas allows a great deal of modularity. For example, the user could take the role of the bundler in the above flow. Or the whole process could be stopped if no solver operations are collected. A variety of customizations are set by the dApps integrating with Atlas.
DApp Rules
DApps integrating Atlas have control over a number of steps during the Atlas transaction lifecycle.

When integrating, a dApp is required to deploy a dAppControl
contract (commonly referred to as module
), which contains all necessary rules, options, and custom hooks
to be executed at key stages of an Atlas transaction.
FastLane has built a variety of modules for different use cases, that dApps can bootstrap from, or deploy as is.