Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nimblehq/eslint-config-nimble
Our ESLint shareable configuration
https://github.com/nimblehq/eslint-config-nimble
eslint eslint-rules javascript process
Last synced: about 16 hours ago
JSON representation
Our ESLint shareable configuration
- Host: GitHub
- URL: https://github.com/nimblehq/eslint-config-nimble
- Owner: nimblehq
- License: mit
- Created: 2017-11-21T09:07:04.000Z (almost 7 years ago)
- Default Branch: develop
- Last Pushed: 2024-04-04T10:51:48.000Z (8 months ago)
- Last Synced: 2024-11-09T13:42:12.773Z (11 days ago)
- Topics: eslint, eslint-rules, javascript, process
- Language: JavaScript
- Homepage:
- Size: 1.22 MB
- Stars: 2
- Watchers: 25
- Forks: 0
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# @nimblehq/eslint-config-nimble
> ESLint [shareable config](http://eslint.org/docs/developer-guide/shareable-configs.html) developed and maintained by [nimble](https://nimblehq.co/)
## Usage
The configurations are separated into dedicated packages:
- [eslint-config-nimble-core](/packages/eslint-config-nimble-core): ESLint core base rules
- [eslint-config-nimble-react](/packages/eslint-config-nimble-react): ESLint rules for React
- [eslint-config-nimble-testing](/packages/eslint-config-nimble-testing): ESLint rules for testing
- [eslint-config-nimble-typescript](/packages/eslint-config-nimble-typescript): ESLint rules for Typescript__Usage information is in the packages' documentation.__
## How to contribute
- This project uses [Lerna](https://lerna.js.org/) 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`](https://github.com/lerna/lerna/tree/main/commands/create#readme) command to add a new package.
- The package name should have the following format: `@nimblehq/{package-name}`. This project is shareable configurations for [ESLint](https://eslint.org/), the `{package-name}` should be `eslint-config-nimble-*`:
```bash
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](/.github/workflows/publish.yml). This workflow uses [`lerna publish`](https://github.com/lerna/lerna/tree/main/commands/publish#readme) command to publish packages.
### Run commands
This project also uses [workspaces](https://docs.npmjs.com/cli/v8/using-npm/workspaces) feature.
To run a command:
- Add the command to `scripts` part in `package.json` files.
- Run the command with `--workspaces/--workspace` parameters:```bash
# 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.
[LICENSE]: /LICENSE
## About
![Nimble](https://assets.nimblehq.co/logo/dark/logo-dark-text-160.png)
This project is maintained and funded by [Nimble](https://nimblehq.co).
We love open source and do our part in sharing our work with the community!
See [our other projects][community] or [hire our team][hire] to help build your product.[community]: https://github.com/nimblehq
[hire]: https://nimblehq.co/