RDFormat Validator
A NodeJS library and CLI tool for validating JSON data against the Reviewdog Diagnostic Format specification.
Features
- ✅ JSON Schema Validation - Validates against the official RDFormat specification
- 🔧 Automatic Fixing - Attempts to fix common formatting issues
- 📝 Detailed Error Reporting - Provides clear error messages with location information
- 🎯 TypeScript Support - Full type definitions included
- 🖥️ CLI Tool - Standalone command-line interface
- 📚 Library Usage - Import as a module in your NodeJS projects
- 🔄 Multiple Input Formats - Supports single diagnostics, arrays, and structured results
Installation
As a Library
npm install @umbrelladocs/rdformat-validatorAs a CLI Tool
# Install globally
npm install -g @umbrelladocs/rdformat-validator
# Or use with npx
npx @umbrelladocs/rdformat-validator --helpQuick Start
Library Usage
import { validate, validateAndFix, RDFormatValidator } from '@umbrelladocs/rdformat-validator';
// Quick validation
const result = await validate('{"diagnostics": []}');
console.log(result.valid); // true
// Validation with automatic fixing
const fixResult = await validateAndFix(invalidData, { fixLevel: 'basic' });
if (fixResult.fixedData) {
console.log('Fixed data:', fixResult.fixedData);
}
const validator = new RDFormatValidator({ strictMode: true, allowExtraFields: false });
const result = await validator.validateFile('./diagnostics.json');
### CLI Usage
Validate a single file
rdformat-validator diagnostics.json