Что это простыми словами
Jotai — это набор маленьких независимых ящиков для данных внутри приложения.
Аналогия: представьте большой склад с одним общим журналом учёта — это Redux. А теперь представьте вместо этого много маленьких ящиков, каждый со своей этикеткой: в одном количество товаров в корзине, в другом данные пользователя, в третьем состояние фильтра. Это Jotai. Части приложения берут из ящиков только то, что им нужно, не трогая остальное.
Эти маленькие кусочки данных разработчики называют атомами (atoms). Один атом — одна единица информации. Jotai их собирает и следит, чтобы изменения доходили туда, куда нужно.
Официальное определение
Теперь, когда суть понятна, вот как Jotai описывают в вакансиях и документации. Эту формулировку вы встретите у заказчика и в резюме — и теперь будете понимать, что за ней стоит.
«Jotai — примитивная и гибкая библиотека атомарного управления состоянием для React».
Разберём по словам. «Примитивная» здесь означает минималистичная, легковесная — в библиотеке мало кода, она не перегружена возможностями. «Атомарное управление состоянием» — это и есть те самые маленькие независимые ящики, атомы. «Состояние» — данные, которые живут на странице и меняются в процессе работы: что пользователь выбрал, что ввёл, что загрузилось с сервера.
Какую задачу решает
Jotai решает ту же задачу, что и Redux или Zustand: хранит данные приложения так, чтобы разные части страницы могли к ним обращаться и не путались, кто показывает старое значение, а кто новое.
Отличие в подходе: вместо одного большого склада Jotai предлагает много маленьких кусочков. Это удобно, когда часть приложения работает со своими данными и не должна реагировать на изменения в других частях. Компонент подписывается только на нужные атомы — остальные его не касаются, и приложение работает быстрее.
К какой экосистеме относится
Язык — JavaScript (часто вместе с TypeScript).
Фреймворк — React. Jotai создавали специально для React, и использовать его вне React не получится.
Специальность — frontend-разработчик.
В резюме и вакансиях Jotai встречается реже, чем Redux или Zustand, но в последние годы набирает популярность. Если видите Jotai в резюме — это сигнал, что разработчик следит за современными подходами.
Чем заменяется
Jotai — не единственный способ управлять данными в React. Ту же задачу решают Redux (включая Redux Toolkit), Zustand, MobX, Effector и Recoil. В проекте обычно выбирают что-то одно.
Главное: переход между ними дешёвый. Разработчик, который работал с Redux или Zustand, освоит Jotai за считаные дни — задача одна, меняется только способ решения. Это не разные профессии, а разные инструменты для одной работы.
По подходу Jotai ближе всего к Recoil: оба работают с атомами. Но Recoil сейчас почти не развивается, и в новых проектах его выбирают редко.
Что не путать
Jotai ≠ React. React — это сам фреймворк для интерфейса, Jotai — одна из библиотек рядом с ним. Приложение на React может работать и без Jotai.
Jotai ≠ база данных. База хранит информацию на сервере надолго, Jotai держит данные только внутри открытой страницы и исчезает при перезагрузке.
Jotai ≠ Vuex или Pinia. Это менеджеры состояния из мира Vue, а не React.
Jotai ≠ Recoil как разные технологии. Идея очень похожа, но Jotai активно развивается, а Recoil почти заморожен.
Насколько это важно при отборе
Короткий ответ: это НЕ повод отбраковывать кандидата.
Самая частая ошибка новичка-рекрутера — требовать в вакансии строго «React + Jotai» и отсеивать сильного разработчика с опытом Redux или Zustand. Он освоит Jotai за несколько дней, потому что задача одна и та же. Отсеивая по конкретной библиотеке, вы теряете хороших людей и затягиваете поиск.
Правильный подход: смотрите, есть ли у кандидата опыт с любым менеджером состояния. Если есть — этого достаточно. Если в вакансии жёстко указано «только Jotai», уточните у нанимающего менеджера, действительно ли это критично: часто оказывается, что команде просто привычнее Jotai, но готовы рассмотреть человека с другим опытом.
Когда всё же стоит обратить внимание: если у кандидата вообще нигде не упомянут ни один менеджер состояния (ни Jotai, ни Redux, ни Zustand), а вакансия предполагает большое сложное приложение — это повод спросить, как он управлял данными в своих проектах.
Это общий ориентир. В разных компаниях требования отличаются, поэтому всегда сверяйтесь с текстом конкретной вакансии.