mirror of
https://github.com/meteor/meteor.git
synced 2026-05-02 03:01:46 -04:00
f1da865ecaabbebbbba6cf0171762400bbf11d38
Rules now get the Meteor root directory passed to them. They can use that information to extract further information about the file being linted based on its path in the project.
ESLint-plugin-Meteor
Meteor specific linting rules for ESLint
Installation
Install ESLint either locally or globally.
$ npm install eslint
If you installed ESLint globally, you have to install Meteor plugin globally too. Otherwise, install it locally.
$ npm install eslint-plugin-meteor
Configuration
Add plugins section and specify ESLint-plugin-Meteor as a plugin.
{
"plugins": [
"meteor"
]
}
Finally, enable all of the rules that you would like to use.
{
"rules": {
"meteor/no-session": 1,
"meteor/no-blaze-lifecycle-assignment": 2,
"meteor/no-blaze-zero-timeout": 2,
"meteor/audit-argument-checks": 2
}
}
List of supported rules
- no-session: Prevent usage of Session
- no-blaze-lifecycle-assignment: Prevent deprecated template lifecycle callback assignments
- no-zero-timeout: Prevent usage of Meteor.setTimeout with zero delay
- audit-argument-checks: Enforce check on all arguments passed to methods and publish functions
To Do
- Add more rules.
Essential Development Resources
These specs and tools help enormously when developing new rules.
Thanks
This plugin is inspired by eslint-plugin-react.
License
ESLint-plugin-Meteor is licensed under the MIT License.
Languages
JavaScript
91.1%
TypeScript
3.9%
Shell
0.9%
Java
0.7%
Swift
0.7%
Other
2.5%