semeleven / yobr

Just for fan - сферический CRUD в вакууме

Home Page:https://yobr.now.sh/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

YOBR

DEMO (если не видно данных, то нужно выполнить reset-запрос к API)

TL;DR

Тут можно оценить, как я применяю следующие инструменты: react, styled-jsx + postcss, material-ui, css-анимацию, axios, express, react-router, flow + tcomb, prettier, redux, reselect, recompose, thunk, saga, ducks-pattern + redux-act, загрузку данных через API, доменную организацию компонентов, функциональные компоненты, промисы, генераторы, мемоизацию, спреды, оператор расширения, деструкцию, стрелочные функции, шаблонные строки, настройки VSCode и WebStorm.

SETUP

  • Поставить: nodejs, yarn, git.
  • Клонировать репозиторий:
$ git clone git@github.com:comerc/yobr.git
  • Запустить сервер:
$ cd ~/yobr/server 
$ yarn install
$ yarn start
  • Запустить клиент:
$ cd ~/yobr
$ yarn install
$ yarn start

Абсолютные пути в импорте

Работают относительно папки src:

import MyComponent from 'components/MyComponent'

VSCode

Нужно добавить jsconfig.json в корень проекта:

{
  "compilerOptions": {
    "target": "ES6"
  },
  "exclude": [
    "node_modules"
  ]
}

WebStorm

Для папки src в контекстом меню выполнить: Mark Directory as > Resource Root.

Atom

  • Установить плагин js-hyperclick.
  • Для доменных компонентов прописывать в package.json путь до src:
{
  "moduleRoots": [
    "../.."
  ]
}

Форматирование кода

Выполняется автоматически при коммите в git, благодаря Prettier - все настройки в package.json:

{
  "devDependencies": {
    "husky": "^0.13.3",
    "lint-staged": "^3.4.1",
    "prettier": "^1.3.1",
  },
  "scripts": {
    "precommit": "lint-staged"
  },
  "lint-staged": {
    "*.js": [
      "prettier --print-width 100 --single-quote --trailing-comma all --no-semi --write",
      "git add"
    ]
  }
}

Общие настройки IDE

VSCode

Чтобы выполнить импорт настроек редактора, нужно установить Settings Sync, потом [Shift]+[Alt]+[D] и ввести ключ: 37f6bb06dfd1b4bc93efbfbf19d60cea

WebStorm

Выполнить 'Import Settings...' из ./webstorm.jar

Публикации

Литература

About

Just for fan - сферический CRUD в вакууме

https://yobr.now.sh/

License:MIT License


Languages

Language:JavaScript 98.1%Language:HTML 1.9%