package.json
{ "name": "practice", "version": "1.0.0", "main": "index.js", "license": "MIT", "scripts": { "server": "nodemon restServer.js" }, "devDependencies": { "eslint": "^8.3.0", "eslint-config-airbnb-base": "^15.0.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-html": "^6.2.0", "eslint-plugin-import": "^2.25.3", "eslint-plugin-prettier": "^4.0.0", "prettier": "2.4.1", "nodemon": "^2.0.15" } }
install
npm install
.eslintrc.js
/* eslint-disable prettier/prettier */ module.exports = { env: { browser: true, es2020: true, }, extends: ["eslint:recommended", "airbnb-base", "plugin:prettier/recommended"], parserOptions: { ecmaVersion: 11, sourceType: "module", }, plugins: ["html"], rules: { "prettier/prettier": [ "error", { semi: false, singleQuote: true, parser: "flow", endOfLine: "auto", useTabs: false, tabWidth: 2, trailingComma: "all", printWidth: 120, arrowParens: "avoid", }, ], }, };
.prettierrc.js
module.exports = { singleQuote: true, semi: false, useTabs: false, tabWidth: 2, trailingComma: 'all', printWidth: 120, arrowParens: 'avoid', endOfLine: 'auto', }
/.vscode/settings.json
{ "editor.formatOnSave": false, "editor.codeActionsOnSave": { "source.fixAll.eslint": true, }, "[css]": { "editor.formatOnSave": true, "editor.defaultFormatter": "esbenp.prettier-vscode" }, "[javascript]": { "editor.formatOnSave": true, "editor.defaultFormatter": "esbenp.prettier-vscode" }, "[json]": { "editor.formatOnSave": true, "editor.defaultFormatter": "esbenp.prettier-vscode", }, "[jsonc]": { "editor.formatOnSave": true, "editor.defaultFormatter": "esbenp.prettier-vscode", }, "[html]": { "editor.formatOnSave": true, "editor.defaultFormatter": "vscode.html-language-features" }, "workbench.settings.useSplitJSON": true }