A heavily customized ESLint config and plugin for JavaScript following the Google JavaScript style guide.
Check out the demo page.
-
Recognizes
goog.scopeas an immediately invoked function expression (IIFE) that doesn't increase the indent.goog.scope(function() { var noIndent = 2; });
-
Recognizes
goog.provideandgoog.require.goog.provide('my.module'); goog.require('other.module'); my.module.Foo = other.module.Bar;
-
Avoids flagging
typedef,exportand other type-related tags as unused./** @export {number} */ my.module.foo = 2;
See the Google JavaScript style guide for the rest of the rules.
This is not an official Google product (experimental or otherwise), it is just code that happens to be owned by Google.
Pull requests are always welcome. To get started, install Bazel, Google's open-source build system, and Yarn, an NPM replacement.
A typical development flow looks like this:
make developto download dependencies from NPM and to link the projects together.make testto ensure everything works first.- Add a feature or fix a bug.
make testgit commitgit push