Демонстрационный проект, показывающий как шарить бизнес-логику между React (веб) и React Native (мобильные) приложениями. Интересно, что при нулевом маркетинге он набрал несколько тысяч загрузок из стора примерно за год.

Контекст

В 2017 году обещание “write once, run anywhere” от React Native было заманчивым, но реальность оказалась сложнее. Этот проект исследовал, какой код на самом деле можно шарить между веб и мобильными React-приложениями.

Эксперимент

Подорожник (по название петербургского проездного) — это простое приложение-калькулятор, реализованное как:

  1. React (Веб): Стандартное React-приложение
  2. React Native (Мобильное): Нативное мобильное приложение

Оба используют одну и ту же бизнес-логику, в то время как UI-компоненты специфичны для платформы.

Выводы

  • Бизнес-логика (вычисления, управление состоянием) хорошо переиспользуется
  • UI-компоненты требуют платформо-специфичных реализаций
  • Философия “learn once, write anywhere”, не “write once, run anywhere”
  • Общий код находится в общем же модуле, импортируемом обеими платформами

Git repo