Skip to content

Web Coding Convention

Junsu Shin edited this page Oct 27, 2020 · 4 revisions

Filename Convention

파일명: (Upper)camelCase(JS) / UpperCamelCase(iOS)

폴더명: camelCase(JS) / UpperCamelCase(iOS)

JavaScript Convention

Module Convention

Backend: CommonJS (require문)

Frontend: ES Module (import ~ export ~)

React

Airbnb React Convention 따름

EsLint Settings File

module.exports = {
  'env': {
    'browser': true,
    'es6': true,
    'node': true,
  },
  'extends': 'eslint:recommended',
  'parserOptions': {
    'ecmaVersion': 12,
    'sourceType': 'module',
  },
  'rules': {
    indent: ['error', 2],
    'semi': ['error', 'always'],
    'no-trailing-spaces': 'error',
    curly: 'error',
    'brace-style': 'error',
    'no-multi-spaces': 'error',
    'space-infix-ops': 'error',
    'space-unary-ops': 'error',
    'no-whitespace-before-property': 'error',
    'func-call-spacing': 'error',
    'space-before-blocks': 'error',
    'keyword-spacing': ['error', { before: true, after: true }],
    'comma-spacing': ['error', { before: false, after: true }],
    'comma-style': ['error', 'last'],
    'comma-dangle': ['error', 'always-multiline'],
    'space-in-parens': ['error', 'never'],
    'block-spacing': 'error',
    'array-bracket-spacing': ['error', 'never'],
    'object-curly-spacing': ['error', 'always'],
    'key-spacing': ['error', { mode: 'strict' }],
    'arrow-spacing': ['error', { before: true, after: true }],
    'eol-last': 'error',
    quotes: ['error', 'single'],
  },
};

CSS Convention

lint 규칙 필요해지면 추후 논의

Clone this wiki locally