forge-guard 0.3.6

Pre-deployment smart contract auditing framework for Foundry
Documentation
//! # Forge Guard
//!
//! Pre-deployment smart contract auditing framework for Foundry.
//!
//! Transforms security auditing from an optional step into a mandatory
//! pre-deployment process, providing developers with comprehensive
//! offline smart contract auditing capabilities.

#![deny(unsafe_code)]
#![warn(unused_crate_dependencies)]

// Suppress unused dependency warnings for crates used in future features
#[allow(unused_extern_crates)]
extern crate duct;
#[allow(unused_extern_crates)]
extern crate globset;
#[allow(unused_extern_crates)]
extern crate hex;
#[allow(unused_extern_crates)]
extern crate sha2;
#[allow(unused_extern_crates)]
extern crate tera;
#[allow(unused_extern_crates)]
extern crate terminal_size;
#[allow(unused_extern_crates)]
extern crate tokio;

pub mod ai;
pub mod benchmark;
pub mod chains;
pub mod ci;
pub mod cli;
pub mod core;
pub mod dashboard;
pub mod dependencies;
pub mod deployment;
pub mod doctor;
pub mod exploit;
pub mod fuzzing;
pub mod gas;
pub mod history;
pub mod importer;
pub mod notify;
pub mod parser;
pub mod plugins;
pub mod reports;
pub mod sbom;
pub mod security;
pub mod suppressions;
pub mod templates;
pub mod utils;

// Used by integration tests — only available as a dev-dependency
#[cfg(test)]
#[allow(unused_extern_crates)]
extern crate tempfile;

use anyhow::Result;

/// Run the forge-guard CLI with the given command-line arguments.
/// Primary entry point for the binary.
pub fn run_cli() -> Result<()> {
    let app = cli::Cli::from_env();
    app.run()
}