## Prerequisites

**Node.js** interpreter (preferably version **15.14.0**) and **yarn** package manager must be installed in the system.

## Installation

After cloning the project, install its dependencies with this command:

```bash
yarn install
```

In the project directory, you can run:

```bash
yarn storybook
```
Runs the app in the development mode.<br />
Open [http://localhost:5005](http://localhost:5005) to view it in the browser.

Prepare for release  <br />
You should enter a password for release. Password you could find here [Frontend config](https://zazaplatform.atlassian.net/wiki/spaces/AP/pages/125108225/Frontend+environment+config)

Release version changed automatically

```bash
yarn release:patch
```
Release patch version. It will change release version for example 0.0.1 -> 0.0.2

```bash
yarn release:minor
```
Release minor version. It will change release version for example 0.1.1 -> 0.2.1

```bash
yarn release:major
```
Release major version. It will change release version for example 1.1.1 -> 2.1.1

After release version will be change, and you should commit and push your changes

## package.json scripts

- **build** -  build application
- **release:patch** - release patch changes
- **release:minor** - release minor changes
- **release:major** - release major changes
- **lint:styles** - start stylelint
- **lint:code** - start eslint
- **lint** - start both eslint and stylelint
- **storybook** - start application on development mode
- **build-storybook** - build storybook

## Folder structure
- **node_modules** - installed dependencies
- **src** - source code
  - **assets** - media files (fonts and global styles)
    - **common** - main folder with global components
    - **enums** - global enums types
    - **forms** - forms components
    - **hooks** - custom React hooks
    - **icons** - react svg components
    - **inputs** - input components (input, checkbox, select, autocomplete, etc.)
    - **types** - global types
    - **utils** - custom utils



