Бойлерплейтов для создания проектов на React/Redux много, create-react-app действительно учитывает многое. Я бы еще предложил посмотреть на проект Ryan Collins, который помимо всего предлагает Apollo / GraphQL из коробки и typescript версия

В данной статье речь не про бойлерплейт, потому что create-react-app создает совершенно минимальный каркас, который бойлерплейтом с натяжкой можно назвать, все пишется с нуля руками за 5 минут, а про работу одним скриптом почти без настроек, по аналогии с react-scripts.


Я тут сравнивал в статье разные фреймворки, и на мой взгляд, чем меньше бойлерплейта — тем лучше. В случае с Next.js или Create React App сама экосистема вообще не заметна, ноль конфигурации (в Next.js можно ее вытащить, если сильно надо), для Electrode надо некоторое кол-во конфигов и бойлерплейта, и это уже вызывает вопросы, как это поддерживать. Но и гибкости в тех, где нет конфигов — поменьше. Но иногда и это на пользу идет, меньше ненужных телодвижений, когда все нельзя. Бойлерплейты все имеют неустранимый недостаток — после инициализации проект уходит своим путем, а бойлерплейт — своим. Нельзя просто взять и синхронизировать проект с последними наработками автора бойлерплейта. А CRA и Next с Electrode — можно, любые оптимизации, которые вносят авторы, будут Вам доступны.


Apollo и GraphQL для потребления прекрасны, для написания своего сервера — тоже хороши, но есть нюансы, особенно если клиент не только вы сами, т.е. нужен еще и REST ;). Ссылку Вашу посмотрю, спасибо.

Да я согласен, что речь не про «бойлерплейты», просто привел пример других подходов к решению одних и тех же задач по сути. Кстати по поводу create-react-app есть форк человека, который добавил туда полезные фичи kitze, описание — Medium

Выглядит многообещающе. Но тут есть страшный момент — когда у автора энтузиазм иссякнет не знает никто. Как часто будут апдейты и синкапы с апстримом? Через год можно оказаться без поддержки и с багами, которые никто не будет фиксить. Страшно как-то, это ведь не библиотека, а вся инфраструктура на форке.

Вот это уже интересно! Попробую воткнуть в свой новый проект.

А не запускается пример:


$ git clone git@github.com:kirill-konshin/create-react-server.git
$ cd ~/create-react-server/examples/create-react-app
$ npm update
$ npm install create-react-server --save-dev
$ npm start

Failed to compile.

Error in ~/create-react-server/src/wrapper.js
Module not found: 'react' in ~/create-react-server/src

 @ ~/create-react-server/src/wrapper.js 1:12-28

Нужно в корне репозитория тоже сделать npm install, связано это с тем, что примеры используют код из /src, которому нужны peerDependencies главного пакета. Я напишу инструкцию в README или поменяю код примеров, чтоб легче было ставить. А вообще — с таким либо в issues на Github, либо в личку.

А вообще — с таким либо в issues на Github, либо в личку.

Гы-гы. Для сравнения — perfect world.

Совершил забег по кругу, и теперь могу с уверенностью сказать, что предложенный способ опционального прикручивания SSR к SPA — самый правильный.


Я же был счастлив, когда сидел на CRA. До той поры, пока не прочитал "Что взять за основу React приложения". А дальше беспрерывная борьба со сложностью окружения. Начитался issues — голова пухнет.

Да, но у CRA куча жестких ограничений… Я сам тоже к нему склоняюсь, но тем не менее, надо это осознавать.

Ещё одна годная статья по теме Server Side Rendering with React and Redux.

Только полноправные пользователи могут оставлять комментарии.
Войдите, пожалуйста.