{
"$schema": "./schemas/architect.schema.json",
"max_lines_per_function": 40,
"architecture_pattern": "MVC",
"forbidden_imports": [
{
"from": "src/**/.controller.ts",
"to": "src/**/.repository.ts",
"severity": "error",
"reason": "Controllers must not access repositories directly; use services"
},
{
"from": "src/**/.service.ts",
"to": "src/**/.controller.ts",
"severity": "error",
"reason": "Services must not import controllers to avoid circular dependencies"
},
{
"from": "src/components/**/*.tsx",
"to": "src/repositories/**/*.ts",
"severity": "warning",
"reason": "Prefer going through a service layer instead of accessing repositories directly"
}
],
"ignored_paths": [
"node_modules/",
"dist/",
"build/",
".git/",
"coverage/",
".next/",
"out/",
".vite/",
".turbo/",
".parcel-cache/",
".cache/"
]
}