We lint everything, including:
scss. We love linting to be as strict as possible.
Everything works for raw files and single file components out of the box. Everything is already configured, so you don't have to.
npm run lint to run everything we have.
eslint to lint
typescript. We stick to
wemake code style. It is just like
standard config, but stricter. But, we have some additional checks that make our style even more stricter.
js linting execute:
npm run lint:js.
All configuration can be found inside
.eslintrc.js. We also have some specific configuration that is applied for tests only. It is located inside
It extends the default configuration with the new rules that are applied for test frameworks that we use.
jsdoc annotation. The rule is simple: if you write
jsdoc you should write a correct one. You may not write them at all (however, that's not good).
eslint-plugin-jsdoc to lint them.
We also lint
.vue files with the help of
These checks are executed together with
stylelint is not related with
eslint at all. It is a standalone tool. Other plugins for languages like
post-css can also be installed if you need them.
css linting execute:
npm run lint:css.
All configuration is done inside
stylelint.config.js. It stores presets, rules, and plugins.
We also ship a rich set of accessability checks for both
eslint with the help of:
Please, do not turn it off! Let's make our apps better!
We lint markdown files with
remark-lint. This tool allows us to write consistent documentation and
md linting execute:
npm run lint:md.
docs/.remarkrc.js to configure
remark. Read more about configuration.
We also use
.remarkignore file to ignore programmatically generated files.
scriptlint package to force correct
"scripts" section definition in
It checks for multiple things including: ordering, naming, bashism, aliasing, etc.
This is simple tool, but a very useful one. Check out the docs for more information.
Linting can be easily changed to any other styles you like (or forced to use).