ads
Load mobile navigation

Ts Screener __hot__ Guide

program.parse(); import ScreenerReport from '../types.js'; export function consoleReporter(report: ScreenerReport): void console.log('\n📊 TypeScript Screener Report\n'); console.log( ✅ Files scanned: $report.summary.filesScanned ); console.log( 🎯 Type coverage: $report.summary.typeCoveragePercent% ); console.log( ⚠️ Total 'any' usage: $report.summary.totalAnyUsage ); console.log( ❓ Missing type annotations: $report.summary.totalMissingTypes ); console.log( 🏁 Status: $report.summary.passed ? 'PASSED ✅' : 'FAILED ❌' );

const program = new Command();

async run(): Promise<ScreenerReport> const files = this.resolveFiles(); const reports: FileReport[] = []; ts screener

if (options.json) console.log(jsonReporter(report)); else consoleReporter(report); program

private analyzeFile(filePath: string): FileReport const sourceText = readFileSync(filePath, 'utf-8'); const sourceFile = ts.createSourceFile(filePath, sourceText, ts.ScriptTarget.Latest, true); import ScreenerReport from '../types.js'

const report = await screener.run();

import ScreenerReport from '../types.js'; export function jsonReporter(report: ScreenerReport): string return JSON.stringify(report, null, 2);