RepoMetro JSON Schema

Overview

The repometro.json file is the primary output of RepoMetro. It contains a complete structured representation of a repository.

Schema Version

{
  "schemaVersion": "1.0"
}

Top-Level Structure

Field Type Description
schemaVersion string Schema version (currently “1.0”)
repository object Repository metadata
overview object Summary statistics
languages array Language distribution
tree object File tree (recursive)
statistics object Detailed statistics
tests object Test file information
dependencies array Dependency manifests
importantFiles array Detected important files
git object|null Git information (null if no git)
pullRequest object|null PR change data (null if not a PR)

Tree Node

Each node in the tree is either a directory or a file:

{
  "type": "directory" | "file",
  "name": "src",
  "path": "src",
  "children": [...],
  "extension": ".ts",
  "language": "TypeScript",
  "size": 1240,
  "lineCount": 45,
  "isTest": false,
  "isBinary": false,
  "isGenerated": false
}

Security

The schema never contains file contents — only metadata. Sensitive files are detected but their contents are never included.

JSON Schema File

The formal JSON Schema is available at schemas/repometro.schema.json.