Благодаря лени узнал, какие фреймворки используют компании на российском рынке. Проанализировал e-comm, банки, интернет-магазины, сайты застройщиков, стриминговые сервисы, телекоммуникации и другие сферы. В конце статьи ссылка на таблицу.

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

Что я сделал

Я поднастроил браузер, накатив несколько плагинов, выходящих за наш стек (вот они: Vue, React и Angular), так же пригодился и DevTools, затем пошел в гугл и по слову «купить» в поиске браузера пролистал где-то 10 страниц. Так я собрал первые данные. Затем мы с командой попросту начали игру в компании – выдергивали то, что на слуху. Было! И это было! Давай еще! Спросили всех в офисе, какими сайтами и сервисами они пользуются, и чекнули рейтинги и топы популярных российских сайтов.

Есть компании, которые мы не смогли определить – в основном это застройщики, старые интернет-магазины и заправки. Или они используют не столь популярные реактивные фреймворки, или – нативный стек. Например, так было с сайтом Wildberries. Их в таблицу мы добавили как Other.

Так у нас получилась эта замечательная таблица с компаниями и инфой про стек, которые они используют. Из 182 компаний – 62 это наш стек Vue.js и радует, что это примерно ⅓. Значит, наша команда может не привязываться к React.

Аналитика (UPD!)

Важно сказать, я не призываю вас менять стек. Под каждый фреймворк можно найти своего клиента. Я лишь делюсь нашим внутренним документом, который сейчас помогает предположить, с кем мы могли бы работать на Vue. Вы можете его копировать и использовать для своих целей.

Я не заметил корреляции между индустрией и фреймворком. Больше я связываю это с масштабом приложений. Angular – для больших корпоративных приложений, React – для проектов любой сложности, благодаря своей гибкости. Vue для средних приложений, но в версии 3 стал более гибкий, благодаря composition api. Vue отлично подходит для быстрого старта благодаря CLI. Но переход с React на Vue дорого обойдётся компаниям.

И для тех, кому не хватило аналитики, добавил из комментов:

→ Спасибо @epifanov_pro

Процентовка:

  1. React — 74 или 39,36%

  2. Vue — 62 или 32,98%

  3. Other — 44 или 23,4%

  4. Angular — 8 или 4,25%

SSR/SSG: 

  1. Nuxt — 18 или 29,03% от всех сайтов с Vue

  2. Next — 1 или 1,35% от всех сайтов с React

Предлагаю улучшить таблицу, пишите в комментарии, если:

→ Знаете что-то про стек других компаний или компаний из таблицы. Буду ее дополнять и редактировать.

→ Заметили неточность или ошибку. Мы скармливали плагинам только одну страницу и ориентировались на полученные данные, не обращались в компании лично, чтобы подтвердить информацию.

Ну а если было полезно, тоже пишите, мне будет приятно. Еще я веду свой небольшой телеграм-канал, где вещаю про фронтенд и как мы развиваем наш юнит. Велкам!

Комментарии (50)


  1. IvaYan
    26.07.2022 17:10
    +6

    Было бы здорово увидеть какие-то подробности. Ну то есть я могу сам зайти таблицу посмотреть, но было бы здорово если бы вы это сделали за меня. Накидаю вам вопросов, которые можно рассмотреть:

    1. Как распределяются фреймворки? Ну то есть я понял, все любят Vue, но а в остальном? Какая доля у каждого? Какой самый популярный, какой наименее популярный?

    2. Есть ли какая-то корреляция между индустрией и фреймворком? Скажем, интернет магазины любят React, а вот банки -- Vue?

    3. Было бы интерсно посмотреть не только на сам фреймворк, но и на версию. Кто идет на острие прогресса, кто ретроград?

    Ну и так далее, можно, на самом деле много подобного придумать. Интересно также как собирали данные и определяли фреймворк. Короче, у вас статья закончилась не успев начаться. Пока что больше похоже, что все задумано для рекламы телеги.


    1. khudyakv Автор
      26.07.2022 18:29
      +1

      Спасибо за интересные уточнения, все по факту, сейчас только пробую себя в статьях поэтому не всегда дожимаю, учусь)

      1) проработаем вопросик, вообще цель исследования была в поиске клиентов на нашем стеке, не преследовали цель установить и сравнить сами фреймворки. Однако тема для размышления принята и очень интересна для следующих статей

      2) наверное нет, больше это причастно к масштабу приложений. Ангуляр для больших корпоративных приложений, реакт для проектов любой сложности благодаря своей гибкости. Вью все же для средних приложений, но в версии 3 стал более гибкий благодаря composition api. 

      3) прям не уверен в ответе, вью с версией 3 хорошо догоняет реакт, но все же наверное реакт преобладает. Ангуляр более тяжелый инструмент и далеко не везде применим.

      Вью отлично подходит для быстрого старта благодаря CLI.

      Вообще бизнесу дорого переходить с реакта на вью, так как продукты придётся переписывать.


      Чаще вью встречается в свежих проектах после перезапуска или в стартапах


      1. IvaYan
        26.07.2022 21:50
        +1

        Нет, вы не поняли. Это не вопросы к вам, это те вопросы на которые хотелось бы увидеть ответы в тексте. И не "наверное нет" или "прям не уверен в ответе", а на основе собранных данных. Вы можете сгруппировать все собранные и проанализированные сайты по сфере деятельности и определить для них популярные фреймворки на основе того что сами насчитали, а не на основе предположений или того как фреймворк позиционирует сам себя.

        Вы же сами пишете:

        только пробую себя в статьях поэтому не всегда дожимаю, учусь)

        Поэтому воспринимайте мой комментарий как рецензию и рекомендации как доработать статью или что учесть в следующих, а не как заданные вам вопросы на которые надо ответить.


        1. khudyakv Автор
          26.07.2022 22:49

          Благодарю, обязательно поработаю над собой , выделю тему в новую статью ????????


  1. k12th
    26.07.2022 17:13

    А что такое native? VanillaJS, веб-компоненты?


    1. khudyakv Автор
      26.07.2022 17:31
      +1

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

      Теоретически там может быть svelte тк его расширение не подсвечивается в зависимости от детекта


      1. huder
        26.07.2022 17:38

        А чем React/Vue не нативный JavaScript? Лучше подписать было как Other


        1. khudyakv Автор
          26.07.2022 17:51

          Спасибо за коррекцию, конечно они основаны на js. Дополним и поправим таблицу


  1. epifanov_pro
    26.07.2022 17:31
    +12

    Для тех, кому, как и мне, не хватило цифр в статье:

    1. React — 74 или 39,36%
    2. Vue — 62 или 32,98%
    3. Native — 44 или 23,4%
    4. Angular — 8 или 4,25%

    Собраны данные из 182 компаний, некоторые, как Аскона, используют парный стек (React + Vue)

    Касаемо SSR/SSG:
    1. Nuxt — 18 или 29,03% от всех сайтов с Vue
    2. Next — 1 или 1,35% от всех сайтов с React

    Данных не ахти, но было интересно ознакомиться.


    1. khudyakv Автор
      26.07.2022 17:36

      Спасибо за дополнение в цифрах!

      Проработаю материал, это одна из первых статей и фидбек очень важен!


  1. SnakeSolid
    26.07.2022 17:37
    +3

    Сводные диаграммы по стекам и категориям, для тех, кому лень открывать таблицу


    1. khudyakv Автор
      26.07.2022 17:42

      Спасибо за графики ????


  1. ermouth
    26.07.2022 17:41
    +3

    знаете что-то про стек компаний, чего не знаем мы – обсудим и добавим в таблицу

    Например по первым 35 строкам вашей таблицы уверенно лидирует... jQuery, 43%.


    1. khudyakv Автор
      27.07.2022 21:17

      легась))) поместили в other. У нас был упор на Vue, React, Angular


  1. exslims
    26.07.2022 17:43
    +3

    У тинька стоит React, хотя большинство бек офиса на ангуляре.


  1. obabichev
    26.07.2022 17:44
    +1

    Возможно я что-то не понимаю, но как эта таблица отвечает на вопрос, нужно ли менять стек?

    К примеру, если бы там было 90% процентов компаний использовали реакт или ангуляр, нужно было бы при этом переходить?

    Если бы у вас был вопрос найма людей, то можно было бы смотреть, сколько есть специалистов по конкретному фреймворку (косвенно сколько вакансий, ибо легче проверить)

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

    Если план на долгое легаси, то смотреть кто как сохраняет обратную совместимость и какие лицензии (лицензии скорей всего примерно одинаковые, но тем не менее)

    Также вызывает вопрос релевантности выборки, выглядит как "мы знаем 60 компаний, у которых Vue, осталось найти 120 без, но не меньше, а то палевно будет". Вопрос, а сколько вообще есть компаний с сайтами на vue/react/angular, насколько большая кодовая база у каждой и т.п.

    Есть компании, которые мы не смогли определить – в основном это застройщики, старые интернет-магазины и заправки.

    Если я неожиданно создам 120 юрлиц и подниму для каждого лендинг на react/angular, вы убавите свой процент вдвое? =) и самое главное, смените стек? =)

    Ничего не имею против каждого из фреймворков (так или иначе больше или меньше коснуться пришлось каждого), но блин, даже на лабах по физике мы не настолько жестко подгоняли данные >_<


    1. khudyakv Автор
      27.07.2022 10:01

      Тут цель была больше в том, что бы его не менять. Она больше служит для того, что бы понять к кому можно пойти за задачами по своему стеку. Мы используем Vue, у нас возникла туманность из-за входящих задач на реакт, закрадывались мысли того - что лидов на вью нет и надо что-то менять.

      В связи этой туманностью - возникла идея пойти прямо по списку и анализировать ручками, на фоне анализа собирал не только Vue, но и попутно другие фреймворки. По итогу таблица стала не только под нашу задачу - кому то она так же будет полезна в поиске задач :)

      Спасибо за интерес, постараюсь твои интересы выделить в отдельную статью и учитывая текущий опыт - дожать))


  1. nin-jin
    26.07.2022 19:54
    -2

    Какая-то купленная у вас статистика. Я проверил 50 наиболее посещаемых мною сайтов и получил более корректное распределение:

    • $mol - 80%

    • Vue - 8%

    • Polymer - 4%

    • Other - 8%

    Вот моя аналитика:

    • Polymer - если ваша цель заставить пользователей максимально страдать.

    • Vue - для побыстрому запилить и свалить в закат.

    • $mol - для проектов любого масштаба, благодаря своей гибкости, эффективности и скорости разработки.


    1. khudyakv Автор
      26.07.2022 20:13
      +1

      Интересная статистика, но мой сценарий можно без проблем воспроизвести - достаточно по слову купить пойти по всем сайтам по гуглу)


      1. vanxant
        26.07.2022 20:29

        вообще есть всякие писькомерки типа алексы (выбыла), интересно было бы пройтись по топ-100 посещамых сайтов


      1. nin-jin
        26.07.2022 20:41

        Так и мой прекрасно воспроизводится - достаточно по слову hyoo.ru пройтись по всем сайтам.


    1. dopusteam
      26.07.2022 21:25
      +9

      А есть сайты на $mol то вообще, которые кто то кроме Вас посещает?

      А если без шуток, примеры сайтов не помешали бы


      1. nin-jin
        26.07.2022 21:40

        У меня для вас есть даже кое что по круче: пакет с пакетами!


    1. Pest85
      27.07.2022 10:01
      +1

      nin-jin 5 марта 2020 в 05:25

      $mol: 4 года спустя
      ...

      хотелось быть рассказать про разработанный мной 4 года назад фреймворк

      Даже удивительно что у создателя фреймворка $mol всего 80% посещаемых сайтов на $mol, правда?


  1. Moraiatw
    26.07.2022 21:43

    Открыл несколько ссылок "Other" - JQuery.


  1. GothicJS
    26.07.2022 21:52

    А React + Vue это как ?
    Еще интересно, почему так мало Nuxt и особенно Next, разве не нужен seo большинству сайтов?


    1. hello_my_name_is_dany
      26.07.2022 22:37
      +1

      А React + Vue это как ?

      Микрофронтенды, что React, что Vue могут инжектироваться в определённый контейнер по селектору.

      Еще интересно, почему так мало Nuxt и особенно Next, разве не нужен seo большинству сайтов?

      Тот же React необязательно использовать как SPA, можно просто рендерить с его помощью только отдельные элементы интерфейса.


      1. modestguy
        26.07.2022 23:53

        Можно. Но зачем?) Скорее это уже просто взросление управленца из серии "а давайте быстренько сделаем спа из нашего сервер-сайд-рендеринг проекта")


    1. khudyakv Автор
      26.07.2022 23:01

      Это вполне может быть легаси, где несколько подрядчиков пишут на разных стеках. Уживается нормально, проект усложняется в поддержке.

      По сео - сайту не обязательно быть полностью на вью, достаточно участия этого фреймворка, даже просто подключения вью через CDN. Вполне возможный вариант, когда основной бэкенд на php.


  1. modestguy
    26.07.2022 23:57

    Почему то сегодня посмотрел Немчинского на Ютубе с той же темой. Совпадение?) Не думаю)


    1. khudyakv Автор
      27.07.2022 04:06

      Вероятно совпадение, эту статью готовил около двух месяцев


  1. pewpew
    27.07.2022 00:19

    А почему только фронт?
    По заголовкам ответа сервера можно понять, какой на бэке HTTP-сервер. По некоторым косвенным данным — какой язык на бэке. Ну и наконец по тем же общим паттернам легко вычислить некоторые движки.


    1. khudyakv Автор
      27.07.2022 04:04

      Тоже круто, у меня просто фронт команда, и потребность была в выявлении именно по фронту. Можно собрать статью про бэкенд в дальнейшем ????????‍♀️


  1. zeleniy
    27.07.2022 11:19

    Почему у angular такая низкая популярность? Пионер в реактивном программировании на JS, разрабатывается Гуглом, удобный, быстрый (вроде как, другие не юзал). Большой набор графических компонент из коробки. Казалось бы все карты в руки...


    1. Zenitchik
      27.07.2022 11:40

      Потому что его нет на JS. А TS любят не все.


    1. nin-jin
      27.07.2022 11:46
      -1

      • Пионер скорее KnockoutJS.

      • С каких пор тонны бойлерплейта и оверинжениринг стали удобными?

      • Тяжёлый и медленный, я проверял.

      • 36 тривиальных компонент - это совсем не много.


      1. zeleniy
        27.07.2022 11:59
        +1

        Вот после ваших слов про то, что он медленный решил погуглить. Есть вот такой сайт - https://perf-track.web.app/ - и там ничего критичного про angular нет.

        А про компоненты. Что ещё есть? Я кроме bootstrap'а ничего особо не знаю и там всего 24 компонента.


        1. nin-jin
          27.07.2022 14:04

          Там какая-то средняя температура по больнице. Вот, более адекватные бенчмарки. В среднем в 2 раза сливает. А по ряду тестов даже в 7.

          Тут от 60 до 200 компонент, смотря как считать.


          1. zeleniy
            27.07.2022 14:23

            Сложно, конечно, в этой таблице ориентироваться, но у react-v17.0.2 такие же примерно показатели как и angular-v13.0.0. Тонн бойлерплейта там нету... видимо они, действительно, проиграли в популярности поставив на TypeScript


            1. nin-jin
              27.07.2022 14:42

              Так и Реакт тот ещё тормоз. Код без бойлерплейта сможете привести?


    1. Zy2ba
      27.07.2022 16:28
      +2

      Material и правда бедный. Для ангуляра есть как минимум опенсорсная Taiga UI от тинька. Можно сравнить и убедиться, что там сильно больше всего.


      1. khudyakv Автор
        27.07.2022 21:19

        спасибо, обязательно изучим :)


  1. John_Go
    27.07.2022 21:19

    Сезон рекламы своих телеграм-каналов объявляется открытым..


    1. khudyakv Автор
      27.07.2022 21:20

      Упор в полезность, это публичная таблица с результатом. Конечно он далеко не идеальный, но работы над собой идут)


  1. akrnv25
    29.07.2022 09:30

    Хочу сказать слово в защиту Angular. React и Vue однозначно популярнее, но я уверен, что Angular занимает не 4%, а сильно больше. В основном, на Angular делают разнообразные админки. Это может быть какая-нибудь CMS/CRM-система, а может быть система для управления аэропортом или электростанцией. Такие сайты не попадают в топ индекса поисковиков, для них это просто неактуально. Кроме прочего, к сожалению, сейчас SEO и Angular – несовместимые понятия (если речь не идет о SSR).

    Вы упоминали в статье Wildberries. Буквально пару месяцев назад получал от них приглашение на вакансию по Angular. Может быть у них CMS на Angular или основной сайт рендерится на сервере и использует при этом Angular. В любом случае, они точно для чего-то используют этот фреймворк.

    Не думаю, что анализ топ индекса может показать реальную картинку того, какие фреймворки используют компании на российском рынке.


    1. IvaYan
      29.07.2022 10:20
      +1

      а может быть система для управления аэропортом или электростанцией.

      Что-то я сомневаюсь, если честно. В таких системах важно время реакции системы на действие оператора. Насколько я знаю, там даже часто анимации нажатия не делают, чтобы не сбивать, когда именно происходит эта реакция.


      1. akrnv25
        29.07.2022 11:32

        По поводу аэропорта у меня подтверждений нет. А вот над системой для электростанций работает мой товарищ. Есть заказы от автодора, железной дороги, от портов и т.д. Я не утверждаю, что везде в таких проектах используют Angular, но это популярный инструмент в данной нише.

        По поводу анимации и скорости реакции. Не думаю, что для всех проектов важна скорость реакции на очень высоком уровне. Это, скорее, исключение, чем правило. Для какой-нибудь системы мониторинга это может быть критично. А для системы, которая чекает билеты – нет. Кто знает, какая система может понадобиться, это очень специфическая ниша. Но то, что спрос на Angular там есть – это точно)


        1. IvaYan
          29.07.2022 11:50
          +1

          Первое, что пришло в голову, всевозможные систему управления самими энергооборудованием или системы управления воздушным движением.

          Но вспомогательные системы -- они да, тут всякое может быть.


          1. akrnv25
            29.07.2022 12:01

            Да, есть много чего интересно в каждой сфере, что в голову само по себе не придет, пока не работаешь напрямую в этой сфере. Несколько месяцев назад ходил на собеседование в компанию, у которой был проект для парковки кораблей в доках. Я даже не мог представить, что такое существует и, тем более, что к этому имеет отношение Angular)


    1. Vanirn
      29.07.2022 14:34

      Только хотел написать похожий на этот комментарий.
      В статье приводятся только публичные сервисы, при этом множество B2B решений так и остаются за "стенами предприятий", как и их производственное оборудование.
      В итоге мы получаем искажённую картину популярности стеков на фронте.

      PS: хочется добавить полезные сервис для определения стека - wappalyzer.