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.