# eslint-plugin-vue rules that has something todo with template

## Base Rules

- https://eslint.vuejs.org/rules/comment-directive.html
- https://eslint.vuejs.org/rules/script-setup-uses-vars.html

## Priority A: Essential

- https://eslint.vuejs.org/rules/no-dupe-v-else-if.html
- https://eslint.vuejs.org/rules/no-duplicate-attributes.html
- https://eslint.vuejs.org/rules/no-mutating-props.html (Does Volar solve this already?)
- https://eslint.vuejs.org/rules/no-parsing-error.html (Is this possible?)
- https://eslint.vuejs.org/rules/no-template-key.html
- https://eslint.vuejs.org/rules/no-textarea-mustache.html
- https://eslint.vuejs.org/rules/no-unused-components.html (Not sure)
- https://eslint.vuejs.org/rules/no-unused-vars.html
- https://eslint.vuejs.org/rules/no-use-v-if-with-v-for.html
- https://eslint.vuejs.org/rules/require-component-is.html
- https://eslint.vuejs.org/rules/require-v-for-key.html
- https://eslint.vuejs.org/rules/use-v-on-exact.html
- https://eslint.vuejs.org/rules/valid-template-root.html
- https://eslint.vuejs.org/rules/valid-v-bind.html
- https://eslint.vuejs.org/rules/valid-v-cloak.html
- https://eslint.vuejs.org/rules/valid-v-else-if.html
- https://eslint.vuejs.org/rules/valid-v-else.html
- https://eslint.vuejs.org/rules/valid-v-for.html
- https://eslint.vuejs.org/rules/valid-v-html.html
- https://eslint.vuejs.org/rules/valid-v-if.html
- https://eslint.vuejs.org/rules/valid-v-model.html
- https://eslint.vuejs.org/rules/valid-v-on.html
- https://eslint.vuejs.org/rules/valid-v-once.html
- https://eslint.vuejs.org/rules/valid-v-pre.html
- https://eslint.vuejs.org/rules/valid-v-show.html
- https://eslint.vuejs.org/rules/valid-v-slot.html
- https://eslint.vuejs.org/rules/valid-v-text.html

## Priority A: Essential for Vue 3

- https://eslint.vuejs.org/rules/no-deprecated-dollar-listeners-api.html
- https://eslint.vuejs.org/rules/no-deprecated-dollar-scopedslots-api.html
- https://eslint.vuejs.org/rules/no-deprecated-events-api.html (?)
- https://eslint.vuejs.org/rules/no-deprecated-filter.html
- https://eslint.vuejs.org/rules/no-deprecated-functional-template.html
- https://eslint.vuejs.org/rules/no-deprecated-html-element-is.html
- https://eslint.vuejs.org/rules/no-deprecated-inline-template.html
- https://eslint.vuejs.org/rules/no-deprecated-scope-attribute.html
- https://eslint.vuejs.org/rules/no-deprecated-slot-attribute.html
- https://eslint.vuejs.org/rules/no-deprecated-slot-scope-attribute.html
- https://eslint.vuejs.org/rules/no-deprecated-v-bind-sync.html
- https://eslint.vuejs.org/rules/no-deprecated-v-on-native-modifier.html
- https://eslint.vuejs.org/rules/no-deprecated-v-on-number-modifiers.html
- https://eslint.vuejs.org/rules/no-v-for-template-key-on-child.html
- https://eslint.vuejs.org/rules/require-toggle-inside-transition.html
- https://eslint.vuejs.org/rules/valid-v-is.html

## Priority A: Essential for Vue 2

- https://eslint.vuejs.org/rules/no-custom-modifiers-on-v-model.html
- https://eslint.vuejs.org/rules/no-multiple-template-root.html
- https://eslint.vuejs.org/rules/no-v-for-template-key.html
- https://eslint.vuejs.org/rules/no-v-model-argument.html
- https://eslint.vuejs.org/rules/valid-v-bind-sync.html

## Priority B: Strongly Recommended

- https://eslint.vuejs.org/rules/attribute-hyphenation.html
- https://eslint.vuejs.org/rules/html-closing-bracket-newline.html
- https://eslint.vuejs.org/rules/html-closing-bracket-spacing.html
- https://eslint.vuejs.org/rules/html-end-tags.html (maybe not necessary for pug)
- https://eslint.vuejs.org/rules/html-indent.html (pug is based on indentation)
- https://eslint.vuejs.org/rules/html-quotes.html
- https://eslint.vuejs.org/rules/html-self-closing.html (pug manages this?)
- https://eslint.vuejs.org/rules/max-attributes-per-line.html (?)
- https://eslint.vuejs.org/rules/multiline-html-element-content-newline.html
- https://eslint.vuejs.org/rules/mustache-interpolation-spacing.html
- https://eslint.vuejs.org/rules/no-multi-spaces.html
- https://eslint.vuejs.org/rules/no-spaces-around-equal-signs-in-attribute.html
- https://eslint.vuejs.org/rules/no-template-shadow.html
- https://eslint.vuejs.org/rules/singleline-html-element-content-newline.html
- https://eslint.vuejs.org/rules/v-bind-style.html
- https://eslint.vuejs.org/rules/v-on-style.html
- https://eslint.vuejs.org/rules/v-slot-style.html

## Priority B: Strongly Recommended for Vue 3

- https://eslint.vuejs.org/rules/require-explicit-emits.html

## Priority C: Recommended

- https://eslint.vuejs.org/rules/attributes-order.html
- https://eslint.vuejs.org/rules/no-lone-template.html
- https://eslint.vuejs.org/rules/no-v-html.html
- https://eslint.vuejs.org/rules/this-in-template.html

## Uncategorized

- https://eslint.vuejs.org/rules/block-tag-newline.html
- https://eslint.vuejs.org/rules/component-name-in-template-casing.html
- https://eslint.vuejs.org/rules/custom-event-name-casing.html (?)
- https://eslint.vuejs.org/rules/html-button-has-type.html
- https://eslint.vuejs.org/rules/html-comment-content-newline.html (?)
- https://eslint.vuejs.org/rules/html-comment-content-spacing.html
- https://eslint.vuejs.org/rules/html-comment-indent.html (?)
- https://eslint.vuejs.org/rules/no-bare-strings-in-template.html
- https://eslint.vuejs.org/rules/no-deprecated-v-is.html
- https://eslint.vuejs.org/rules/no-duplicate-attr-inheritance.html
- https://eslint.vuejs.org/rules/no-empty-component-block.html (?)
- https://eslint.vuejs.org/rules/no-multiple-objects-in-class.html
- https://eslint.vuejs.org/rules/no-restricted-block.html
- https://eslint.vuejs.org/rules/no-restricted-custom-event.html
- https://eslint.vuejs.org/rules/no-restricted-static-attribute.html
- https://eslint.vuejs.org/rules/no-restricted-v-bind.html
- https://eslint.vuejs.org/rules/no-static-inline-styles.html
- https://eslint.vuejs.org/rules/no-template-target-blank.html
- https://eslint.vuejs.org/rules/no-unregistered-components.html
- https://eslint.vuejs.org/rules/no-unsupported-features.html
- https://eslint.vuejs.org/rules/no-unused-properties.html (?)
- https://eslint.vuejs.org/rules/no-unused-refs.html
- https://eslint.vuejs.org/rules/no-useless-mustaches.html
- https://eslint.vuejs.org/rules/no-useless-v-bind.html
- https://eslint.vuejs.org/rules/no-v-text.html
- https://eslint.vuejs.org/rules/static-class-names-order.html
- https://eslint.vuejs.org/rules/v-for-delimiter-style.html
- https://eslint.vuejs.org/rules/v-on-event-hyphenation.html
- https://eslint.vuejs.org/rules/v-on-function-call.html
- https://eslint.vuejs.org/rules/valid-v-memo.html

## Extension Rules

- https://eslint.vuejs.org/rules/#extension-rules
