Expand description
DesignGuard - KiCad schematic and PCB validation library
This library provides validation rules for KiCad designs, checking for common mistakes like missing decoupling capacitors, incorrect pull-up resistors, and trace width issues.
§Quick Start
use designguard::{DesignGuardCore, ValidationOptions};
use std::path::Path;
let options = ValidationOptions::default();
let result = DesignGuardCore::validate_schematic(
Path::new("design.kicad_sch"),
options,
).unwrap();
for issue in &result.issues {
println!("{:?}: {}", issue.severity, issue.message);
}§Features
- Schematic validation: Decoupling caps, pull-ups, power integrity
- PCB validation: Trace widths, EMI checks, IPC-2221 compliance
- Datasheet checking: Component-specific validation
- Optional AI: Ollama/Claude integration (used by GUI/CLI)
Re-exports§
pub use core::DesignGuardError;pub use core::DesignGuardCore;pub use core::ValidationOptions;pub use core::ValidationResult;pub use core::ValidationStats;pub use core::discover_kicad_files;pub use analyzer::rules::Issue;pub use analyzer::rules::Severity;pub use analyzer::rules::RulesEngine;pub use parser::schema::Schematic;pub use parser::pcb_schema::PcbDesign;pub use parser::kicad::KicadParser;pub use parser::pcb::PcbParser;
Modules§
- ai
- analyzer
- compliance
- PCB Compliance Module
- core
- Core validation logic shared by GUI and CLI. No Tauri or app state dependencies.
- datasheets
- Datasheet-Aware Design Checking System
- parser
- prelude
- Prelude for convenient imports.
- ucs
- Unified Circuit Schema (UCS) Module
Functions§
- parse_
pcb - Parse a PCB file (convenience wrapper).
- parse_
schematic - Parse a schematic file (convenience wrapper).