diff --git a/scrapegraph-js/.prettierignore b/scrapegraph-js/.prettierignore new file mode 100644 index 0000000..30bc162 --- /dev/null +++ b/scrapegraph-js/.prettierignore @@ -0,0 +1 @@ +/node_modules \ No newline at end of file diff --git a/scrapegraph-js/.prettierrc.json b/scrapegraph-js/.prettierrc.json new file mode 100644 index 0000000..57e2f8b --- /dev/null +++ b/scrapegraph-js/.prettierrc.json @@ -0,0 +1,11 @@ +{ + "semi": true, + "singleQuote": true, + "trailingComma": "es5", + "tabWidth": 2, + "useTabs": false, + "printWidth": 110, + "bracketSpacing": true, + "arrowParens": "always", + "quoteProps": "preserve" +} diff --git a/scrapegraph-js/eslint.config.js b/scrapegraph-js/eslint.config.js new file mode 100644 index 0000000..01a4fe2 --- /dev/null +++ b/scrapegraph-js/eslint.config.js @@ -0,0 +1,11 @@ +import globals from 'globals'; +import pluginJs from '@eslint/js'; +import eslintPluginPrettierRecommended from 'eslint-plugin-prettier/recommended'; + +/** @type {import('eslint').Linter.Config[]} */ +export default [ + { languageOptions: { globals: { ...globals.browser, ...globals.node } } }, + pluginJs.configs.recommended, + eslintPluginPrettierRecommended, + { ignorePatterns: ['node_modules/'] }, +]; diff --git a/scrapegraph-js/package-lock.json b/scrapegraph-js/package-lock.json index ba7917b..7b42d4d 100644 --- a/scrapegraph-js/package-lock.json +++ b/scrapegraph-js/package-lock.json @@ -14,7 +14,8 @@ "zod-to-json-schema": "^3.23.5" }, "devDependencies": { - "dotenv": "^16.4.5" + "dotenv": "^16.4.5", + "prettier": "3.4.1" } }, "node_modules/asynckit": { @@ -123,6 +124,22 @@ "node": ">= 0.6" } }, + "node_modules/prettier": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.4.1.tgz", + "integrity": "sha512-G+YdqtITVZmOJje6QkXQWzl3fSfMxFwm1tjTyo9exhkmWSqC4Yhd1+lug++IlR2mvRVAxEDDWYkQdeSztajqgg==", + "dev": true, + "license": "MIT", + "bin": { + "prettier": "bin/prettier.cjs" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, "node_modules/proxy-from-env": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", diff --git a/scrapegraph-js/package.json b/scrapegraph-js/package.json index 46f1dd9..dc55319 100644 --- a/scrapegraph-js/package.json +++ b/scrapegraph-js/package.json @@ -8,6 +8,10 @@ "url": "https://github.com/ScrapeGraphAI/scrapegraph-sdk", "directory": "scrapegraph-js" }, + "scripts": { + "format": "prettier --write --cache --cache-strategy metadata . !dist", + "lint": "eslint ." + }, "license": "MIT", "homepage": "https://github.com/ScrapeGraphAI/scrapegraph-sdk/tree/main/scrapegraph-js", "keywords": [ @@ -28,6 +32,12 @@ "zod-to-json-schema": "^3.23.5" }, "devDependencies": { - "dotenv": "^16.4.5" + "@eslint/js": "^9.16.0", + "dotenv": "^16.4.5", + "eslint": "^9.16.0", + "eslint-config-prettier": "^9.1.0", + "eslint-plugin-prettier": "^5.2.1", + "globals": "^15.12.0", + "prettier": "3.4.1" } }