Skip to content

llcruzh/file-processing-and-validation-engine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

File Processing & Validation Engine

A modular validation engine for processing structured input files (CSV/JSON), enforcing schema rules, and producing structured validation reports. Designed to emphasize reliability, clear error modeling, and extensible pipeline architecture.


What It Does

  • Reads records from CSV or JSON inputs
  • Validates each record against a JSON-defined schema
  • Produces a structured report with:
    • total / valid / invalid record counts
    • per-field validation issues (with row + field context)
  • Optionally writes the report to a JSON output file

Engineering Focus

This project demonstrates:

  • Defensive programming and input validation
  • Schema-driven validation and rule enforcement
  • Pipeline-style architecture (read → validate → report)
  • Clear error modeling (consistent, structured issue objects)
  • Testability through a modular design and automated checks

Project Structure

  • file_engine/cli.py — CLI entry point and command routing
  • file_engine/engine.py — validation pipeline orchestration
  • file_engine/schema.py — schema loading and rule definitions
  • file_engine/models.py — typed report + issue objects
  • file_engine/validators/ — format-specific record readers (CSV/JSON)
  • file_engine/report.py — report serialization
  • schemas/ — example schemas
  • examples/ — example input files
  • tests/ — automated tests

Setup

python3 -m venv .venv
source .venv/bin/activate   # Windows: .venv\Scripts\activate
pip install -r requirements.txt

About

Modular engine for validating CSV and JSON files against schema-defined rules, with structured error reporting and extensible pipeline design.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages