Skip to content

Fast, local CLI written in Rust for validating, inspecting, and converting CSV & JSON datasets using file-based schemas.

License

Notifications You must be signed in to change notification settings

manjunathh-xyz/schemeforge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

schemeforge

Fast, local CLI written in Rust for validating, inspecting, and converting CSV & JSON datasets using file-based schemas.

Problem Statement

Validating and converting datasets between CSV and JSON formats is often tedious and error-prone. Developers and data analysts frequently need to ensure data integrity, check for type mismatches, and transform data formats without relying on external services or complex tools.

Why schemeforge?

schemeforge provides a simple, fast, and local solution for dataset validation and conversion. It uses declarative schemas to define expected data structures, catching errors early and enabling reliable data processing pipelines.

Installation

cargo install schemeforge

Or build from source:

git clone https://github.com/manjunathh-xyz/schemeforge.git
cd schemeforge
cargo build --release

Usage

Validate a dataset

schemeforge validate data.csv --schema schema.json

Show dataset statistics

schemeforge stats data.json

Convert between formats

schemeforge convert input.csv output.json
schemeforge convert input.json output.csv

Schema Format

Schemas are JSON files defining fields and their types:

{
  "fields": {
    "name": {"field_type": "string", "required": true},
    "age": {"field_type": "number", "required": false},
    "active": {"field_type": "boolean", "required": false}
  }
}

Supported types: string, number, boolean.

Non-Goals

  • No plugins or extensions
  • No custom schema DSL
  • No asynchronous operations
  • No network access
  • No configuration files
  • No auto-fixing of data
  • No GUI interface

About

Fast, local CLI written in Rust for validating, inspecting, and converting CSV & JSON datasets using file-based schemas.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Languages