Skip to main content

Overview

The ReportGenerator class formats scan findings into beautiful, readable console reports.

Constructor

new ReportGenerator()
Example:
const ReportGenerator = require('kafkacode/dist/ReportGenerator');

const reporter = new ReportGenerator();

Methods

generateReport(directory, findings, filesScanned)

Generates a formatted privacy scan report.
generateReport(
  directory: string,
  findings: Finding[],
  filesScanned: number
): string
Parameters:
  • directory (string): Directory that was scanned
  • findings (Finding[]): Array of findings
  • filesScanned (number): Number of files scanned
Returns: Formatted report string Example:
const ReportGenerator = require('kafkacode/dist/ReportGenerator');

const reporter = new ReportGenerator();
const report = reporter.generateReport('./src', findings, 25);

console.log(report);

Usage Example

Complete Scan with Report

const FileScanner = require('kafkacode/dist/FileScanner');
const AnalysisEngine = require('kafkacode/dist/AnalysisEngine');
const ReportGenerator = require('kafkacode/dist/ReportGenerator');

async function scanAndReport(directory) {
  // Discover files
  const scanner = new FileScanner(directory);
  const files = scanner.scanFiles();

  // Analyze files
  const engine = new AnalysisEngine();
  const findings = await engine.analyzeFiles(files);

  // Generate report
  const reporter = new ReportGenerator();
  const report = reporter.generateReport(directory, findings, files.length);

  console.log(report);

  return findings;
}

scanAndReport('./src');

Report Format

The generated report includes:
  • Header: Privacy Scan Report title
  • Summary: Directory, timestamp, files scanned, issues found, privacy grade
  • Issue Listings: Grouped by severity with details
  • Recommendations: Actionable advice for each issue

Next Steps