zarrs_conventions_thumbnails 0.1.0

Thumbnails zarr-convention for the zarrs ecosystem
Documentation
import Ajv2020 from "ajv/dist/2020.js";
import addFormats from "ajv-formats";
import fs from "fs";

// Read command line arguments
const schemaPath = process.argv[2];
const dataPath = process.argv[3];

if (!schemaPath || !dataPath) {
  console.error("Usage: node validate.js <schema.json> <data.json>");
  process.exit(1);
}

// Read files
const schema = JSON.parse(fs.readFileSync(schemaPath, "utf8"));
const data = JSON.parse(fs.readFileSync(dataPath, "utf8"));

// Validate
const ajv = new Ajv2020({ allErrors: true });
addFormats(ajv);
const validate = ajv.compile(schema);
const valid = validate(data);

if (valid) {
  console.log("✅ Validation successful!");
  process.exit(0);
} else {
  console.log("❌ Validation failed!");
  console.log(JSON.stringify(validate.errors, null, 2));
  process.exit(1);
}