eslint-config-pagarme-base

3.0.0 • Public • Published

Pagar.me JavaScript Style Guide

Our style guide is based on Airbnb's. Differences between them are described below.


Installing

The rules described in this repository are also available as a eslint config package. To install the package and its dependencies:

$ npm install --save-dev eslint@5.3.0 \
                         eslint-plugin-import@2.16.0 \
                         eslint-config-pagarme-base

The peer dependencies specified above have hardcoded versions. If you prefer you can use the command npm info eslint-config-airbnb-base@latest peerDependencies to find the exact peer dependencies to install.

To include in the project, create an .eslintrc file with at least the following contents:

{
  "extends": ["pagarme-base"]
}

Rules

Semicolons

Do not use semicolons.

Space before function paren

Wrong:

function transaction(amount) {
 
}

Right:

function transaction (amount) {
 
}

Linebreaks inside function parentheses

Wrong:

transaction(amount,
  installments)

Right:

transaction(
  amount,
  installments
)

Comma dangle always on multiline except on functions

Wrong:

const array = [1, 2, 3,]

Right:

const array = [1, 2, 3]

Wrong:

const array = [
  1,
  2,
  3
]

Right:

const array = [
  1,
  2,
  3,
]

Wrong:

const obj = {
  a: 1,
  b: 2,
  c: 3
}

Right:

const obj = {
  a: 1,
  b: 2,
  c: 3,
}

Dangling comma may cause weird errors when used on functions, you should avoid it.

Wrong:

Object.assign(
  {},
  b,
  c,
)

Right:

Object.assign(
  {},
  b,
  c
)

Maximum Line Length

Avoid having lines of code that are longer than 80 characters (including whitespace).

Maximum params in function definition

A function should have no more than 3 parameters. Consider using an options object parameter if you need to pass in more values to a function.

Multiple Empty Lines

Disallow the use of 2+ empty lines in the middle of the code.

Wrong:

const a = 'This is a test'
 
 
console.log(a)

Right:

const a = 'This is a test'
 
console.log(a)

Package Sidebar

Install

npm i eslint-config-pagarme-base

Weekly Downloads

6,296

Version

3.0.0

License

MIT

Unpacked Size

4.92 kB

Total Files

4

Last publish

Collaborators

  • pagarme-opensource
  • matheusvellone
  • lucianopf
  • marquinhoalm
  • zignd
  • cigoli
  • geraldofada-pagarme
  • gabilleone
  • ramonpaolo-pagarme
  • davidsmedeiros
  • andre.lsilva
  • bruno.mduarte
  • nathaliacrelier
  • jonasnt17
  • danielponde
  • joaovjs-pagarme
  • rpsantos1987
  • prifight
  • carolinaaguelera
  • gabrielpagarme
  • magnomoreira