#!/bin/bash set -e # Create clean output directories rm -rf gen && mkdir -p gen/ts gen/go/models # Find all .json files FILES=$(find schemas -name "*.json") # Initialize the TypeScript Barrel File echo "// Auto-generated barrel file" > gen/ts/index.ts for file in $FILES; do # Get a clean name (e.g., data-ingress_pis-mapping) clean_name=$(echo "${file#schemas/}" | sed 's/\//_/g' | sed 's/\.json//g') # OGenerate TS npx --yes json-schema-to-typescript "$file" > "gen/ts/${clean_name}.ts" # Generate Go go-jsonschema -p backend_data_contracts "$file" > "gen/go/models/${clean_name}.go" done echo "✅ Generated single TS package in gen/ts" echo "✅ Generated single Go package in gen/go/models"