ferrous_forge/
lib.rs

1//! # Ferrous Forge
2//!
3//! The Type-Safe Rust Development Standards Enforcer
4//!
5//! Ferrous Forge is a comprehensive system-wide tool that automatically enforces
6//! professional Rust development standards across all projects on your machine.
7//!
8//! ## Features
9//!
10//! - Zero underscore bandaid coding enforcement
11//! - Edition 2024 automatic upgrades
12//! - System-wide cargo command hijacking
13//! - Automatic project template injection
14//! - Real-time code validation
15//! - Professional CI/CD setup
16//!
17//! ## Quick Start
18//!
19//! ```bash
20//! cargo install ferrous-forge
21//! ferrous-forge init
22//! cargo new my-project  # Now follows all standards automatically
23//! ```
24//!
25//! ## Modules
26//!
27//! - [`cli`] - Command line interface definitions
28//! - [`commands`] - Command implementations
29//! - [`config`] - Configuration management
30//! - [`standards`] - Standards definitions and enforcement
31//! - [`templates`] - Project template system
32//! - [`validation`] - Code validation and linting
33//! - [`updater`] - Self-update and version management
34
35#![forbid(unsafe_code)]
36#![warn(missing_docs)]
37#![cfg_attr(docsrs, feature(doc_cfg))]
38
39/// AI-powered violation analysis module
40pub mod ai_analyzer;
41pub mod cli;
42pub mod commands;
43pub mod config;
44pub mod doc_coverage;
45pub mod edition;
46pub mod error;
47pub mod formatting;
48pub mod git_hooks;
49pub mod rust_version;
50pub mod safety;
51pub mod security;
52pub mod standards;
53pub mod templates;
54pub mod test_coverage;
55pub mod updater;
56pub mod validation;
57
58// Re-export commonly used types
59pub use crate::config::Config;
60pub use crate::error::{Error, Result};
61
62/// Current version of Ferrous Forge
63pub const VERSION: &str = env!("CARGO_PKG_VERSION");
64
65/// Minimum supported Rust version
66pub const MIN_RUST_VERSION: &str = "1.82.0";
67
68/// Edition enforced by Ferrous Forge
69pub const REQUIRED_EDITION: &str = "2024";