Package Exports
- eslint-config-motley-typescript
- eslint-config-motley-typescript/.eslintrc.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (eslint-config-motley-typescript) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
eslint-config-motley-typescript
Motley's TypeScript styleguide, using eslint and prettier with zero configuration.
Based on eslint-config-airbnb.
Supports the following features out of the box:
- Prettier autoformatting on precommit stage via
husky. - ES2015+
- Imports and exports
- React
- a11y
- Full TypeScript support
__DEV__is a valid underscore-dangle valuejsis a valid filename forJSXfiles (in JavaScript)
Installation
Run the following command:
npx install-peerdeps --dev eslint-config-motley-typescriptIf you get prompted that do you want to use Yarn and nothing gets installed after that try following command:
npx install-peerdeps --dev eslint-config-motley-typescript --yarnIf all went well, you should see the following in your .eslintrc.js:
module.exports = {
extends: 'motley-typescript',
};Post-install:
You should have the following set in .prettierrc;
{
"singleQuote": true,
"trailingComma": "all"
}and the following in your package.json:
{
"husky": {
"hooks": {
"pre-commit": "lint-staged"
}
},
"lint-staged": {
"*.{js,json,graphql,md,css,scss,less,ts,tsx}": ["prettier --write", "git add"]
}
}Running tests
Tests use verdaccio as a local repository and jest for testing. The tests itself can be found under
__tests__ and fixtures under __fixtures__. For local testing, you'll need Docker. Run the tests with
npm run test:localThe tests are also run in CI with GitHub Actions, as defined in .github/workflows.
Acknowledgements
We would like to thank the creators, maintainers and contributors of following libraries for making this possible:
eslint-config-airbnbfor being the base and providing a handy way to installpeerDependenciesfrom a package.prettierfor being 🕶️ and providing a way to disable some eslint configurations from abovehuskyandlint-stagedfor making precommit hooks easy