# Naming Conventions Status: Mandatory Date: 2026-07-03 ## General - Use clear domain-oriented names. - Prefer explicit names over abbreviations. - Keep naming consistent across Website, Builder, Backoffice. ## Files and Folders - Folders: kebab-case. - TypeScript files: kebab-case with suffix. - Interfaces: PascalCase. - Types: PascalCase. - Enums: PascalCase. - Constants: UPPER_SNAKE_CASE for true constants. ## Angular Artifacts - Component: name.component.ts - Container component: name.container.component.ts - Facade: name.facade.ts - Service: name.service.ts - Adapter: name.adapter.ts - Token: name.token.ts - Guard: name.guard.ts - Resolver: name.resolver.ts - Pipe: name.pipe.ts ## Configuration Contracts - Bootstrap payload root: BootstrapConfig. - Domain segments named by function: - TenantConfig - BrandingConfig - ThemeConfig - FeatureFlagsConfig - NavigationConfig - PageConfig - SectionConfig - WidgetConfig ## Event and Action Naming - Outputs: actionRequested, valueChanged, selectionChanged. - Facade commands: loadX, updateX, saveX, publishX. - Selectors/signals: xState, xViewModel, isXEnabled. ## Prohibited Names - Generic names without domain meaning such as DataService or UtilsService. - Tenant-coded names in frontend source. - Brand-specific class names in reusable layers.