Shared eslint configurations
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
.eslintrc.js πŸ’₯ Lint our lint plugin πŸ˜‚ Dec 31, 2017
.gitignore Update gitignore Dec 19, 2017
LICENSE 2018 Jan 2, 2018 πŸ›  Updated tooling to use new standards (#7) Jul 16, 2018
package.json v0.0.27 Sep 17, 2018
yarn.lock πŸ›  Updated tooling to use new standards (#7) Jul 16, 2018


Shared eslint configurations, useful plugins & custom rules.

Inside of lib/config you'll find a set of configs for different environments + base.js.

Base.js effectively documents our code style. Please make sure any rules you add come with an explanation!

Basic setup

  1. Make sure that gstenv is green. See our Dev Environment docs.
  2. git clone this repo & cd into it as usual
  3. Run yarn install to install dependencies.


Run yarn link inside of me, and then run yarn link eslint-plugin-ghost inside of the project you want to lint.


  • Inside of package.json, add this rule: "lint": "eslint . --ext .js --cache"
  • Then, in your project root, create an .eslintrc.js file, and add the following code:
module.exports = {
    plugins: ['ghost'],
    extends: [
  • Change [config] to be E.g. node, browser, test etc depending on what environment you are linting
  • If you have a test folder, browser JS, etc, you can add multiple .eslintrc.js files, nesting them inside the folder they belong to.


  • yarn ship - yarn ship

Copyright & License

Copyright (c) 2017-2018 Ghost Foundation - Released under the MIT license. Ghost and the Ghost Logo are trademarks of Ghost Foundation Ltd. Please see our trademark policy for info on acceptable usage.