Экосистема

Redux - это небольшая библиотека, в которой соглашения и API были тщательно продуманы для удобного создания инструментов и подключения расширений экосистемы.

Мы рекомендуем ознакомиться с большим списком репозиториев, связанных с Redux в Awesome Redux. Он содержит примеры, макеты, промежуточное ПО (middleware), библиотеки утилит и т.д.

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

Итак, рассмотрим Наш список и не стесняйтесь делиться своими наработками, если вы сделали что-то удивительное с Redux.

Связь с DOM (Bindings)

Промежуточное ПО (Middleware)

  • redux-thunk — Самый легкий способ создавать асинхронные генераторы действий (action creators)
  • redux-promiseFSA-совместимый promise middleware
  • redux-rx — RxJS утилиты для Redux, включая middleware для Observable
  • redux-logger — Логирование каждого Redux действия (action) и следующего состояния (state)
  • redux-immutable-state-invariant — Предупреждения об изменениях состояния во время разработки
  • redux-analytics — Аналитика для Redux

Компоненты (Components)

  • redux-form — Поддержка Redux состояний (stores) для html форм, испольующихся в React

Улучшения Store

  • redux-batched-subscribe — Настройка групповых и отложенных вызовов для подписавшихся на store
  • redux-history-transitions — переходы по History основанные на произвольных действиях (actions).

Улучшения Reducer

  • redux-optimist — Оптимистичное использование действий (action) с возможностью их совершения или отмены в дальнейшем.

    От переводчика: например, можно инициировать ADD_TODO action, state изменится, UI обновится мгновенно, а затем отправится запрос на сохранение на сервер. Если на сервере все прошло успешно, то все ок и больше ничего не происходит. Но если же что-то пошло не так, то state будет "отмотан" до сотояния когда ADD_TODO action еще не был применен, state изменится, UI обновится мгновенно. Т.е. UI будет выглядеть так, словно ничего и не произошло.

  • redux-undo — Позволяет без усилий получить undo/redo функциональность и историю действий для редьюсеров
    • redux-ignore — Ignore redux actions by array or filter function
  • redux-recycle — Reset the redux state on certain actions
  • redux-batched-actions — Dispatch several actions with a single subscriber notification

Утилиты (Utilities)

  • reselect — Простая библиотека "селекторов" нашедшая вдохновение в геттерах NuclearJS
  • normalizr — Упорядочивание вложенных API ответов для облегчения дальнейшего их использования в редьюсерах.
  • redux-actions — Уменьшение шаблонности в написании редьюсеров и генераторов действий (action creators)
  • redux-transducers — Transducer утилиты для Redux
  • redux-immutablejs — Инструменты интеграции между Redux и Immutable
  • redux-tcomb — Иммутабельные, с проверкой типов состояния и действия для Redux

Инструменты разработчика (Developer Tools)

Туториалы и статьи (Tutorials and Articles)

Talks

Общественные соглашения

  • Flux Standard Action — Дружелюбные к человеку стандарты для Flux action объектов
  • Canonical Reducer Composition — Слишком самоуверенный (?) стандарт для структуры вложенных редьюсеров
  • Ducks: Redux Reducer Bundles — Предложение по свзяыванию редьюсеров, типов действий и действий

Прочее (More)

Awesome Redux обширный список репозиториев, имеющих отношение к Redux.