@nimblehq/eslint-config-nimble
ESLint shareable config developed and maintained by nimble
Usage
The configurations are separated into dedicated packages:
- eslint-config-nimble-core: ESLint core base rules
- eslint-config-nimble-testing: ESLint testing base rules
- eslint-config-nimble-react: ESLint rules for React
Usage information is in the packages' documentation.
How to contribute
-
This project uses Lerna to manage packages. Install Lerna for accessing to the lerna CLI.
-
To contribute to the existing packages, simply navigate to the
/packages
folder and create a pull request to change them.
Add a new package
-
Use
lerna create
command to add a new package. -
The package name should have the following format:
@nimblehq/{package-name}
. This project is shareable configurations for ESLint, the{package-name}
should beeslint-config-nimble-*
:
lerna create @nimblehq/eslint-config-nimble-react
Publish packages
-
Packages will be published to npmjs automatically after publishing a new release.
-
Need to set the version in
/packages/**/package.json
before creating the release. -
More details in publish workflow. This workflow uses
lerna publish
command to publish packages.
Run commands
This project also uses workspaces feature.
To run a command:
- Add the command to
scripts
part inpackage.json
files. - Run the command with
--workspaces/--workspace
parameters:
# Run `lint` on all workspaces:
npm run lint --workspaces
# Run `lint` on `@nimblehq/eslint-config-nimble` workspace:
npm run lint --workspace=@nimblehq/eslint-config-nimble
License
This project is Copyright (c) 2014 and onwards Nimble. It is free software and may be redistributed under the terms specified in the LICENSE file.
About
This project is maintained and funded by Nimble.
We love open source and do our part in sharing our work with the community! See our other projects or hire our team to help build your product.