Overview
** Note: Abyss App Starter-Kit Only **
Abyss has built-in lint tooling that is set up to help you maintain a consistent code style across your project. The configuration is very minimal and it is recommended that for teams looking for more advanced linting to utilize their own ESLint configuration.
CLI examples of running the Linter:
npm run lint -- --fixfrom thewebdirectory.npm run lintfrom therootdirectory (runs across all products, i.e. web, api, parcels/workshop).
Supported options
--fix- Uses the eslint fix option to fix as many issues as possible.--ci- Will trigger a process exit 1 whenever any lint errors are found.--format- Uses the eslint format option to specify the output format for the console (defaults to usage of eslint-formatter.js)
Important: Teams requiring more advanced linting should implement their own ESLint configurations rather than requesting additional features.
If you'd like to utilize any Eslint CLI options beyond the supported options listed above, please run the eslint command directly rather than using abyss lint.
Migrating
** Please note that this is only applicable for teams that created an abyss app project prior to version 1.61.0**.
Due to ESLint 7 being EOL and the need to upgrade to ESLint 9, we have made the necessary changes to the linting configuration.
Step 1: Make sure you're upgraded to Abyss core version 1.61.0 or above.
- All versions below
1.61.0can continue to use the existing linting configuration.
Step 2: Update your eslint package to the latest version in your root package.json.
"eslint": "^9.15.0",Step 3: Remove eslintConfig from your package.json inside the web, api and parcels/workshop directories.
Step 4: Create a eslint.config.js file in the root of your project and add the following configuration:
module.exports = require('@uhg-abyss/core/eslint-config');Step 5: Remove the .eslintignore file from the root directory.
Step 6: If present, remove the following from your .vscode/settings.json file:
"eslint.options": { "resolvePluginsRelativeTo": "node_modules/@uhg-abyss/core" }Note: Teams should upgrade to "typescript": "4.9.4", in their root package.json to ensure compatibility with the latest ESLint configuration.