Code styling

You MUST NOT style your code manually, let machines do it:

npm run format

This uses underlying prettier dependency that will enforce rules defined in .prettierrc.

Styling code is prone to individual perception of clean looking code - this will in long term generate unnecessary styling differences, tensions between people that can end relationships. Don't be "that" person.

Users SHOULD use extension for code editor of choice(for Visual Studio Code we recommend use Prettier - Code formatter). This will apply appropriate formatting directly in editor.

On top of that, you MUST always fallow code styling defined in .editorconfig with use of extension for code editor(for Visual Studio Code we recommend use EditorConfig for VS Code)

Focus on delivering "Clean Code" - not "Styled Code".

At any point of time code can be tested if its properly formatted:

npm run test:format

Styling is applied by use of pretty-quick and Husky and is defined as pre-commit hook in .huskyrc file.

Linting

You MUST ensure that your code is passing linting with ESLint.

This will lower the amount of bugs and inconsistencies over the whole code base:

npm run lint

The rules defined for ESLint are defined in .eslintrc file.

Users SHOULD use extension for code editor of choice(for Visual Studio Code we recommend use ESLint). This will enforce appropriate linting directly in editor.

At any point of time code can be tested if its properly linted:

npm run test:lint