Техническая информация о веб-приложении

Данное приложение сделано на фреймворке Next.js, основанном на библиотеке React. Этот фреймворк значительно упрощает задачу по генерации веб-страниц на сервере. При таком подходе клиентский браузер получает готовую страницу, которую сразу можно начать отрисовывать. (При альтернативном подходе, когда страницы генерируются на клиенте, браузер получает заготовку страницы, которую сначала надо заполнить текстовым содержимым. А для того, чтобы можно было заполнить страницу содержимым, необходимо получить и распарсить соответствующий JavaScript-код.)

Текстовые данные для серверной генерации страниц приложения берутся из профиля фрилансера Lazytech на сайте Хабр Фриланс.

Верстка страниц адаптивная («отзывчивая»). Изображения, показываемые на страницах, хранятся на стороннем сайте. Поскольку ширина и высота картинок в общем случае неизвестны и могут быть произвольными, пришлось принять меры по предотвращению перетекания содержимого и подергивания страницы при их загрузке и отрисовке. С этой целью сервер приложения сначала запрашивает со стороннего сайта параметры всех изображений, а затем генерирует страницу с учетом полученных размеров.

Отдельные страницы (например, данная страница) создаются на сервере не при каждом запросе, а лишь однократно («статическая генерация»), что позволяет снизить нагрузку на сервер.