#solidity #ast #analyzer #smart-contracts #aderyn #foundry #process

aderyn_driver

Rust based Solidity AST analyzer driver

22 releases

new 0.1.0 Jun 1, 2024
0.0.28 May 29, 2024
0.0.24 Apr 26, 2024
0.0.18 Mar 26, 2024
0.0.10 Dec 23, 2023

#2605 in Magic Beans

Download history 115/week @ 2024-02-10 274/week @ 2024-02-17 276/week @ 2024-02-24 114/week @ 2024-03-02 236/week @ 2024-03-09 298/week @ 2024-03-16 172/week @ 2024-03-23 160/week @ 2024-03-30 415/week @ 2024-04-06 456/week @ 2024-04-13 258/week @ 2024-04-20 126/week @ 2024-04-27 239/week @ 2024-05-04 267/week @ 2024-05-11 267/week @ 2024-05-18 260/week @ 2024-05-25

1,043 downloads per month
Used in 2 crates

MIT license

40KB
944 lines



A powerful Solidity static analyzer that takes a bird's eye view over your smart contracts.



Twitter Website Discord

Aderyn Driver

aderyn_driver drives the process of running aderyn over a codebase, utilizing aderyn_core.

Order of operation:

  1. Framework detection.
    • Aderyn uses the compiled AST of smart contracts to analyze them.
    • Foundry and Hardhat projects are supported, and the ASTs are loaded depending on which one is detected.
  2. Build the WorkspaceContext.
    • Upon loading the AST, context is built up within the WorkspaceContext that detectors can access.
  3. Run Detectors on the WorkspaceContext.
    • Each detector is run on the context and issues are stored in each detector.
  4. Report printed.
    • Each detector is passed to the report printer, which prints each found issue in the report.

Dependencies

~33–51MB
~863K SLoC