Overview
The package exports core types for programmatic use:
import type {
VibgrateConfig,
ScanArtifact,
DriftScore,
Finding,
} from '@vibgrate/cli@latest';
Types
VibgrateConfig
Configuration object shape:
interface VibgrateConfig {
exclude?: string[];
thresholds?: {
failOnError?: {
eolDays?: number;
frameworkMajorLag?: number;
dependencyTwoPlusPercent?: number;
};
warn?: {
frameworkMajorLag?: number;
dependencyTwoPlusPercent?: number;
};
};
scanners?: Record<string, { enabled: boolean }> | false;
}
ScanArtifact
Full scan result:
interface ScanArtifact {
schemaVersion: string;
timestamp: string;
driftScore: DriftScore;
findings: Finding[];
projects: Project[];
// ... additional metadata
}
DriftScore
Score breakdown:
interface DriftScore {
overall: number;
riskLevel: 'low' | 'moderate' | 'high';
components: {
runtime: number;
frameworks: number;
dependencies: number;
eolRisk: number;
};
}
Finding
Individual finding:
interface Finding {
id: string;
severity: 'error' | 'warning' | 'info';
message: string;
path?: string;
rule?: string;
}
Requirements
- Node.js >= 22.0.0
- Works on macOS, Linux, and Windows