Skip to content

One-Block-Org/Atupa

Repository files navigation

Atupa Logo

Atupa

High-Fidelity Ethereum Tracing & Visual Profiling Suite

CI Status Crates.io Documentation License: MIT


Atupa (meaning Lantern/Lamp) is a professional-grade EVM execution profiler designed to turn raw JSON-RPC debug_traceTransaction logs into actionable visual insights. Whether you are debugging a complex DeFi reentrancy or optimizing a gas-intensive Uniswap v4 hook, Atupa sheds light on the internal state of every transaction.

✨ Key Features

  • 🔥 Visual Flamegraphs: Collapses thousands of EVM opcodes into hierarchical gas-weighted visualizations.
  • 🚨 Crimson Revert Identification: Instantly identifies failing sub-calls with high-contrast crimson gradients.
  • 🔍 Smart Contract Resolution: Automatically resolves hex addresses to verified contract names via Etherscan V2.
  • ⚙️ Layered Configuration: Robust configuration management via atupa.toml, environment variables, and CLI overrides.
  • 🛠 Modular Library Architecture: Pure Rust implementation with separate crates for RPC, Parsing, and Visualization.

🚀 Quick Start

Installation

cargo install atupa

Profiling a Transaction

# Profile a mainnet transaction
atupa profile --tx 0x... --rpc https://mainnet.infura.io/v3/YOUR_KEY

# Run the offline demo
atupa profile --demo

📦 Project Structure

Atupa is built as a highly modular monorepo:

Crate Description
atupa The primary command-line interface.
atupa-core Shared types and core configuration logic.
atupa-parser The aggregation engine that collapses EVM traces.
atupa-rpc Async Ethereum JSON-RPC client & Etherscan resolver.
atupa-output SVG generation engine using Askama templates.

🤝 Contributing

We welcome contributions! Please see our Contributing Guidelines for more details.

📄 License

Atupa is dual-licensed under the MIT License and the Apache License 2.0.

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages