Please use this configuration to maintain a common and homogeneous code base.
Install this package as any other package with:
yarn add --dev @flyyer/eslint-config eslint prettier
Create a .eslintignore
and add any files that are bundled, builded and/or transpiled:
!.eslintrc.js
.vscode
.next
dist
public
node_modules
In the package.json
file add the following in the "scripts"
section:
{
// ...
"scripts": {
// ...
"lint": "eslint '*/**/*.{js,ts,tsx}'",
},
}
Create a .eslintrc.js
file in the root of your project and add the following:
// .eslintrc.js
module.exports = {
extends: [
"@flyyer/eslint-config",
"@flyyer/eslint-config/jest",
"@flyyer/eslint-config/prettier",
],
};
Create a .eslintrc.js
file in the root of your project and add the following:
// .eslintrc.js
module.exports = {
extends: [
"@flyyer/eslint-config",
"@flyyer/eslint-config/typescript",
"@flyyer/eslint-config/jest",
"@flyyer/eslint-config/prettier",
],
};
Create a .eslintrc.js
file in the root of your project and add the following:
// .eslintrc.js
module.exports = {
extends: [
"@flyyer/eslint-config",
"@flyyer/eslint-config/typescript",
"@flyyer/eslint-config/react",
"@flyyer/eslint-config/jest",
"@flyyer/eslint-config/prettier",
],
};
To lint the files run:
yarn lint
To lint the files and auto-format run:
yarn lint --fix
Create file .vscode/settings.json
mkdir -p .vscode
touch .vscode/settings.json
Add the following:
{
"editor.codeActionsOnSave": {
"source.fixAll.eslint": true
},
}
To make changes to this package run:
yarn link
yarn link '@flyyer/eslint-config'
To publish and update of this package run:
# git add ...
# git commit ...
git push --follow-tags
yarn publish --access=public
Unlink this package:
yarn unlink '@flyyer/eslint-config'
yarn unlink