An open API service indexing awesome lists of open source software.

https://github.com/notacat1/react-typescript

React Redux TypeScript is a template project designed to quickly start developing React applications using Redux and TypeScript state management. It is also pre-configured using various tools to ensure code quality and ease of development, such as linters, commit hooks, etc.
https://github.com/notacat1/react-typescript

react redux scss typescript

Last synced: about 2 months ago
JSON representation

React Redux TypeScript is a template project designed to quickly start developing React applications using Redux and TypeScript state management. It is also pre-configured using various tools to ensure code quality and ease of development, such as linters, commit hooks, etc.

Awesome Lists containing this project

README

          

![React](https://img.shields.io/badge/react-%2320232a.svg?style=for-the-badge&logo=react&logoColor=%2361DAFB)
![Redux](https://img.shields.io/badge/redux-%23593d88.svg?style=for-the-badge&logo=redux&logoColor=white)
![TypeScript](https://img.shields.io/badge/typescript-%23007ACC.svg?style=for-the-badge&logo=typescript&logoColor=white)
![SASS](https://img.shields.io/badge/SASS-hotpink.svg?style=for-the-badge&logo=SASS&logoColor=white)

# Шаблон проекта React Redux TypeScript

Этот шаблонный проект предназначен для быстрого старта разработки приложений на React с использованием управления состоянием Redux и TypeScript. Он также предварительно настроен с использованием различных инструментов для обеспечения качества кода и удобства разработки, таких как линтеры, хуки коммитов и т.д.

## Особенности

**React и Redux:** React используется для создания пользовательских интерфейсов, а Redux - для эффективного управления состоянием приложения. Это позволяет организовать код в приложении таким образом, чтобы он был более предсказуемым и легко масштабируемым.

**TypeScript:** Использование TypeScript обеспечивает статическую типизацию, что помогает предотвратить множество ошибок на этапе разработки и повысить общее качество кода.

**Инструменты линтинга:** Проект настроен с использованием ESLint для линтинга JavaScript и TypeScript кода, а также Stylelint для линтинга CSS и SCSS файлов. Эти инструменты помогают поддерживать единообразие кода, выявлять потенциальные проблемы и улучшать читаемость кода.

**Автоматическое форматирование кода:** Prettier включен для автоматического форматирования кода, что позволяет избежать дискуссий о стиле кода в команде разработчиков и обеспечивает единообразие в стиле кодирования.

**Хуки коммитов:** Используя Commitlint и Husky, проект настроен на проверку сообщений коммитов перед их фиксацией. Это гарантирует соблюдение определенных соглашений о формате коммитов и улучшает читаемость истории коммитов.

## Начало работы

### Установка

Клонируйте репозиторий:

```bash
git clone https://github.com/NotACat1/React-TypeScript.git
```

Установите зависимости:

```bash
npm install
```

### Запуск

Запустите сервер разработки:

```bash
npm run start
```

Теперь вы готовы начать разработку вашего приложения React на основе этого шаблона.

## Доступные скрипты

После установки проекта вы можете использовать следующие скрипты:

```
"start": "react-scripts start"
```

Этот скрипт запускает приложение в режиме разработки. Он использует `react-scripts`, который обеспечивает сборку проекта и запуск локального сервера для разработки.

```
"build": "react-scripts build"
```

Этот скрипт создает оптимизированную сборку приложения для производства. Он также использует `react-scripts` для сборки проекта, но результаты сохраняются в каталоге `build`.

```
"test": "react-scripts test"
```

Этот скрипт запускает тестовый раннер для вашего приложения. Он также использует `react-scripts` для запуска тестов в интерактивном режиме просмотра.

```
"eject": "react-scripts eject"
```

Этот скрипт используется для "извлечения" конфигурации `react-scripts`. Когда вы выполняете этот скрипт, все настройки и зависимости `react-scripts` будут скопированы в ваш проект, и вы сможете их настраивать по своему усмотрению.

```
"predeploy": "npm run build"
```

Этот скрипт запускается перед развертыванием (deploy). В данном случае он просто запускает скрипт `build`, чтобы убедиться, что перед развертыванием приложение собрано.

```
"deploy": "gh-pages -d build"
```

Этот скрипт используется для развертывания вашего приложения на GitHub Pages. Он использует инструмент `gh-pages`, чтобы опубликовать содержимое каталога `build` вашего проекта на GitHub Pages.

```
"husky-inst": "npx husky install && chmod +x .husky/pre-commit .husky/commit-msg"
```

Этот скрипт используется для установки Husky и настройки его хуков. Он использует `npx husky install`, чтобы установить Husky, и `chmod +x` для установки прав на выполнение скриптов `pre-commit` и `commit-msg`.

```
"msg-commit": "npx commitlint -E HUSKY_GIT_PARAMS"
```

Этот скрипт используется для проверки сообщений коммитов перед фиксацией. Он использует инструмент `commitlint`, чтобы проверить формат сообщения коммита.

```
"lint": "npx lint-staged"
```

Этот скрипт используется для линтинга измененных файлов перед коммитом. Он использует инструмент `lint-staged`, чтобы линтить только те файлы, которые были изменены, ускоряя процесс линтинга.

## Участие в разработке

Мы приветствуем ваши вклады в этот проект. Вы можете помочь нам, отправляя отчеты о найденных ошибках, предложения по улучшению функциональности или запросы на внесение изменений.