Why this matters
This makes it easier to see the relationships between components at a glance, especially when editors organize files alphabetically.
Component names should start with the highest-level (often most general) words and end with descriptive modifying words.
This makes it easier to see the relationships between components at a glance, especially when editors organize files alphabetically.
Side-by-side examples engineers can pattern-match during review.
components/
|- ClearSearchButton.vue
|- ExcludeFromSearchInput.vue
|- LaunchOnStartupCheckbox.vue
|- RunSearchButton.vue
|- SearchInput.vue
|- TermsCheckbox.vuecomponents/
|- SearchButtonClear.vue
|- SearchButtonRun.vue
|- SearchInputQuery.vue
|- SearchInputExcludeGlob.vue
|- SettingsCheckboxTerms.vue
|- SettingsCheckboxLaunchOnStartup.vueFrom the same buckets as this rule.
For applications, styles in a top-level `App` component and in layout components may be global, but all other components should always be scoped. This can be achieved through CSS modules, class-based strategies like BEM, or the `scoped` attribute in Single-File Components.