Skip to content

Latest commit

 

History

History
94 lines (67 loc) · 3.93 KB

CONTRIBUTING.md

File metadata and controls

94 lines (67 loc) · 3.93 KB

📃 Соглашения

Некоторые основные правила, призванные упростить процесс разработки.

Импорты

1. Предпочтительно выносить все импорты в одну переменную

Пример:

// плохо
import {очень_длинное_название_функции, ещё_одно_длинное_название_функции} from "откуда-то_там";
...
очень_длинное_название_функции();
ещё_одно_длинное_название_функции();

// хорошо
import * as Откуда-тоТам from "откуда-то_там";
...
Откуда-тоТам.очень_длинное_название_функции();
Откуда-тоТам.ещё_одно_длинное_название_функции();
 

2. Соблюдать очередность импортов: сверху - импорты сторонних модулей, снизу - собственные. Разделять сторонние импорты от собственных пустой строкой

Пример:

import React from "react";
import { Provider } from "react-redux";

import МойМодуль from "./путь/мойМодуль";
import МойДругойМодуль from "./../путь/мойДругойМодуль"; 

Коммиты

1. Каждый коммит должен быть написан на английском и соответсовать формату: "действие: описание"

Пример:

add: some feature that do something
update: something (clarification)
remove: filename

Комментарии

Предпочтительно писать комментарии на русском языке, но допускается написание и на английском. Комментарии должны быть содержательными, но (по возможности) краткими. Написание комментариев обязательно только к интерфейсам, в остальных случаях на усмотрение автора; желательно, конечно, писать везде.

1. Интерфейсы описываются Javadoc в одну строку.

Пример:

// хорошо
interface IPlayer {
	/** Здоровье игрока. */
	health: number;
}

// плохо
interface IPlayer {
	/** 
	 * Здоровье игрока. 
	 */
	health: number;
}

📌 Задачи

🔨 Инструменты

  • nodejs - платформа ввода-вывода, транслирущая javascript
  • docker - упаковщик приложения для удобного развёртывания на сервере
  • typescript - строгая типизация данных
  • jest - тестирование приложения
  • webpack - сборщик приложения
  • react - библиотека для разработки пользовательского интерфейса
  • pixijs - обёртка над 2d и WebGL контекстами для отрисовки графики
  • socketio - обёртка над WebSocket (TCP)
  • express - REST API
  • mongoose - ORM к mongo (СУБД)
  • redux - менеджер состояния приложения
  • saga - обработка асинхронных операций с состоянием приложения