Skip to content

Instantly share code, notes, and snippets.

@rafaelmaiach
Last active June 21, 2023 13:36
Show Gist options
  • Save rafaelmaiach/29e5280b82a068131a94106bbcd509e1 to your computer and use it in GitHub Desktop.
Save rafaelmaiach/29e5280b82a068131a94106bbcd509e1 to your computer and use it in GitHub Desktop.
Project configuration (Vue)
> 1%
last 2 versions
not ie <= 10
module.exports = {
root: true,
env: {
node: true,
},
extends: [
'plugin:vue/recommended',
'@vue/airbnb',
'plugin:vue-a11y/recommended',
'plugin:vue-i18n/recommended',
'plugin:vue-types/strongly-recommended',
],
rules: {
'arrow-parens': ['error', 'as-needed', { requireForBlockBody: true }],
'consistent-return': 'off',
'import/no-extraneous-dependencies': 'off',
'import/no-unresolved': 'off',
'import/prefer-default-export': 'off',
'indent': ['error', 'tab'],
'max-len': ['error', { code: 200 }],
'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
'no-param-reassign': [
'error',
{
'props': true,
'ignorePropertyModificationsFor': [
'state',
'req',
'res',
'acc',
]
}
],
'no-tabs': 'off',
'prefer-destructuring': ['error', {
'object': true,
'array': false,
}],
'vue/attribute-hyphenation': 'off',
'vue/html-self-closing': 'off',
'vue/html-indent': ['error', 'tab'],
'vue-i18n/no-missing-keys': 'off',
'vue-i18n/no-dynamic-keys': 'off',
'vue-i18n/no-raw-text': 'off',
'vue-i18n/no-unused-keys': ['error', {
extensions: ['.js', '.vue']
}],
'vue/max-attributes-per-line': ['error', {
'singleline': 3,
'multiline': {
'max': 1,
'allowFirstLine': false
}
}],
'vue/require-component-is': 'off',
'vue/script-indent': ['error', 'tab', {
'baseIndent': 1,
'switchCase': 1,
}],
'vue/singleline-html-element-content-newline': 'off',
},
parserOptions: {
parser: 'babel-eslint',
},
overrides: [
{
'files': ['*.vue'],
'rules': {
'indent': 'off'
}
},
{
files: [
'**/__tests__/*.{j,t}s?(x)',
'**/tests/unit/**/*.spec.{j,t}s?(x)',
'**/*.spec.js'
],
env: {
jest: true,
},
},
],
settings: {
'vue-i18n': {
localeDir: './src/i18n/locales/*.json',
},
'vue-types/namespace': ['VueTypes', 'AppTypes'],
},
};
# Fix end-of-lines in Git versions older than 2.10
# https://github.com/git/git/blob/master/Documentation/RelNotes/2.10.0.txt#L248
* text=auto eol=lf
# ===
# Binary Files (don't diff, don't fix line endings)
# ===
# Images
*.png binary
*.jpg binary
*.jpeg binary
*.gif binary
*.ico binary
*.tiff binary
# Compressed
*.gz binary
*.zip binary
*.7z binary
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment