Допустим, я хочу сделать условный блог с чатом. Я раньше делал только простые сайты используя html,css,js,php и теперь чуть изучил реакт и использовал для этого create-react-app. Мне на ум структура для блога на реакте пришла только такая - в public'e index.html, profile.html, admin_profile.html, chat.html, папка для стилей, папка для статических js файлов. В корне проекта же есть ещё папка с php скриптами, которые будут выполнять весь бэкенд с помощью запросов на них. И вопрос, у нас же только одна точна входа в проект где рендерится App.js в котором собраны все реакт компоненты и как рендерить компоненты в другой html файл или вообще какая должна быть структура у многостраничного сайта на react?
зависит от требований. Если нужна SEO индексация - один путь, если нет - другой. Дальше плясать от поддержки девайсов, количества страниц, и кучи других факторов. В папку public класть кучу html файлов точно не надо.
Хорошо. Однако, я иммел ввиду(Я знаю, что я идиот и неправильно сформулировал вопрос), что нужно делать как проект и с react-router или не будет грехом сделать просто несколько html страниц и к ним свой react файл подключить?
Как правило, реакт используется для SPA, т.е. single page application. То есть точка входа в приложение одна - index.html, на которой подключается скрипт приложения. Дополнительные адреса, как правило, обрабатываются клиентским роутингом (см. react-router например). Т.е. на все запросы бэкенд будет отдавать index.html, а сам урл будет разбираться на фронте.
Как правило React или Vue используются для разработки реактивных компонентов, которым в какой-то степени и является SPA, но говорить раз React значить SPA неверно