Skip to content

@kekkai/blueprint / ArchitectureDef

Interface: ArchitectureDef

Defined in: config/types.ts:101

Properties

additionalAliases?

optional additionalAliases?: Record<string, string>

Defined in: config/types.ts:108

Extra roots beyond alias that also participate in import bans.


alias

alias: string

Defined in: config/types.ts:106

Project import alias, e.g. ~app. Every structural ban pattern is built on it. Required — a wrong default would silently pass illegal imports.


flow

flow: "one-way"

Defined in: config/types.ts:123

Dependency direction. Only one-way for now (upstream imports banned).


layerFiles?

optional layerFiles?: string | string[]

Defined in: config/types.ts:130

Layer → file glob(s), each carrying a {layer} placeholder. Defaults are derived from framework when omitted.


layerFilesIgnore?

optional layerFilesIgnore?: string | string[]

Defined in: config/types.ts:132

File globs excluded from linting.


layers

layers: LayerDef[]

Defined in: config/types.ts:121

Ordered layers. Order defines the one-way flow: a layer may import only layers declared after it. Per-layer allowedImporters narrows who may import a given layer (see LayerDef.allowedImporters).


module

module: ModuleDef

Defined in: config/types.ts:125

Feature-folder shape shared across layers.


naming?

optional naming?: Record<string, string>

Defined in: config/types.ts:140

Naming conventions, keyed by concept, e.g. { hook: 'useX + reactivity' }.


sourceRoot?

optional sourceRoot?: string

Defined in: config/types.ts:115

The directory layers live under, relative to the project root. Defaults to src. Use . for frameworks that keep layers at the project root (e.g. a Next.js project without srcDir, where app/ sits at the root). Drives the scan base, the default layer-file globs, and the alias target.


testFiles?

optional testFiles?: string | string[]

Defined in: config/types.ts:138

Test-file glob(s). Structural rules and metric gates skip these (per-entry, not globally — test-only rules still reach them). Defaults to the *.test.* / *.spec.* patterns.