pwa что это такое
Для тех, кто не понял с первого раза
Я не буду подробно разжевывать тебе о PWA, так как на эту тему написано уже много статей.
Моя цель — простым языком дать основную информацию, которой тебе хватит, чтобы понимать что такое PWA. Потом показать реальный пример, которым забетонируем всё, что ты усвоил.
После прочтения ты будешь понимать следующее:
А ну и еще, я настоятельно рекомендую взять сейчас ноутбук и повторять всё, что я буду делать. Иначе, информация вылетит из головы.
На этом вводная часть закончена, переходим к основной части.
Не просто верстка. Что нужно знать, чтобы верстать ХОРОШО?
Как и почему хорошая верстка напрямую влияет на качество продукта. Лучшие практики, чтобы повысить качество верстки.
Возможности и преимущества
Я подготовил несколько логически связанных пунктов, которыми попробую описать всю картину.
Технология PWA была анонсирована компанией Google в 2015 году. Она позиционирует себя как дополнительная надстройка, которая позволяет сделать из сайта подобие мобильного приложения.
При этом внутренности никакие не меняются, не трансформируются, сайт остаётся тем же, трансформируется только браузер.
Какие возможности предоставялет PWA?
Пару слов о преимуществах
Хотите разработать мобильное приложение? Уверены?
Преимущества и недостатки PWA для бизнеса в сравнении с мобльным приложением.
Не приятные моменты
Думаю, этого вполне достаточно, чтобы уже представить что такое PWA. Ну а если мало, можно почитать тут
Вот список сайтов, которые используют PWA — https://pwa.rocks
Основные понятия
Service Worker — Это по сути файл со скриптами, который отвечает за всю эту магию. Все запросы браузера идут через него, что даёт кучу возможностей, например, если отсутствует соединение с интернетом возвращает контент из кэша(если он конечно там есть).
В нем мы обрабатываем различные события, запись, удаление файлов из кэша и многое другое.
Скрипты работают в фоновом режиме, параллельно с приложением.
Manifest.json — Файл настроек. Там мы указывает какие иконки использовать, какой текст отображать в ярлыке, в каком формате открывать окно браузера и тд. Более подробно поговорим о нём чуть ниже.
Application Shell — Так называют оболочку для PWA. А если конкретнее, это браузер, который слегка трансформируется, чтобы дать больше возможностей разработчику.
HTTPS — Одно из главных требования PWA — передача данных по https протоколу, что более безопасно.
При разработке можно использовать localhost.
Push Notifications — технология для отправки push-уведомлений.
Настройка PWA
А настроить её на самом деле очень просто, и чтобы это доказать, давай сразу перейдем к написанию кода, так будет проще. Погнали!
Вот ссылка на уже готовый код https://github.com/denisoed/PWA-example, от туда можешь скачать картинки, которые потребуются дальше, ну и за одно ознакомишься с тем, что получилось.
Итак, начнем с создания папки для проекта, назовем её PWA. Далее в эту папку добавим index.html, в котором будет вот такой код
Верстку я уже подготовил, но пока без стилей это выглядит плохо, поэтому добавим и их. Создаём папку css, в которую добавляем файл styles.css и вставляем в него код ниже
Конечно же, подключаем этот файл в index.html, в тэг …
Давай сразу подключим нужные картинки, которые можно скачать тут. Перейдешь по ссылке, там будет кнопка Clone or download, зеленая такая, жмешь её, потом кликаешь Download ZIP. Скачается архив, в нем и будут картинки в папке images. Фух, думаю довольно доступно объяснил
Открываешь проект, создаешь там директорию images, куда вставляешь все картинки. Далее открываешь index.html и вставляешь в тэг … мета информацию. Что это и зачем, можешь почитать тут.
В итоге, в файле index.html должна быть вот такая структура
Теперь остаётся запустить и посмотреть, что получилось. Я тут нашел очень удобный экстеншн Web Server for Chrome, который запускает локальный сервер, его нужно установить, он нам понадобится далее. Там ничего сложно, просто укажи папку с проектом, где лежит index.html, он сам всё сделает. Копируешь ссылку и вставляешь в браузер.
И вот что у нас получилось. Я бы не сказал, что это шЭдЭвр, но как по мне нормально!
После того, как пройдет процесс валидации, мы увидим следующую картину: пункт отвечающий за PWA будет серым. Это говорит о том, что у нас отсутствуют настройки.
И если проскроллить ниже, можно увидеть рекомендации, которые нужно выполнить, чтобы PWA работало как часы.
Вкладка Lighthouse поможет тебе отслеживать все ошибки при настройки PWA.
Ну вот, наконец-то мы дошли до самого интересного.
Для начала нужно создать файл manifest.json в корне проекта. В него мы добавляем следующие метаданные:
Этого пока достаточно. Вот тут есть описание всех свойств этого файла, как будет время, почитай обязательно.
PWA-приложения. Что это такое и для чего бизнесу создавать приложение из сайта
Приветствую. На связи Евгений Данилюк и по профессии я интернет-маркетолог. Сегодня хотел бы поговорить о технологии, которая помогает превратить сайт в приложение.
Хочу обозначить, что цель этой статьи – рассказать как можно большему количеству людей о том, что есть такая технология. Она называется PWA.
Записал видео, для тех кто не хочет читать много текста
PWA или Progressive Web Application – технология, которая позволяет клиентам установить ваш сайт на смартфон как приложение. На русский язык переводиться как «прогрессивное веб-приложение».
Теперь не нужно разрабатывать отдельно сайт, приложение под iOS и приложение под Android. Достаточно иметь и поддерживать только сайт.
Приложения на базе PWA мы используем чаще, чем кажется на первый взгляд.
Бренды Twitter, Tinder, Uber, Telegram, Starbucks, Forbes, AliExpress, Aviasales используют приложения на базе PWA как основе или в дополнение к мобильному приложению.
Подходит всем бизнесам, услугами которого клиенты пользуются регулярно.
Ниже описал подробнее как можно использовать приложение на базе PWA
2. Рестораны, кафе, пиццерии и сети доставок
6. Барбершопам и бьюти сфера.
7. Сетевые компании
9. Сервисы по шерингу техники
Вы можете сами пройти процесс установки, открыв в браузере на мобильном устройстве страницу.
1. Пользователь переходит на сайт и видит всплывающее окно с предложением. Например: «Пицца со скидкой 25% при заказе с приложения».
2. Пользователь в один клик устанавливает приложение.
3. Пользователь переходит в приложение, внутри этого приложения открывается сайт и пользователь делает заказ со скидкой.
4. Приложение установлено. Следующий шаг, это отправка пуш уведомлений пользователю.
Подробнее про разработку PWA приложения можете узнать на специальной странице.
На этом пока все. Вкратце описал, что такое приложении на базе PWA технологии и как его можно использовать именно с позиции маркетолога.
Далее планирую сделать еще 2 статьи и поделиться результатами внедрения такого приложения, а также рассказать подробнее как составить и отправить Push-уведомление в приложении на базе PWA.
Если остались вопросы, задавайте их в комментарии. Идеи по использованию или опыт использования таких приложений также пишите в комментарии. Интересно узнать.
Спасибо за уделенное время!
Давно существуют бесплатные ресурсы для изготовления таких пва. Не хватает ссылок на них и небольшого обзора.
Чтобы сделать универсальное PWA, которое нативно (!) работает на Android и iOS и при этом достаточно хорошо работает в браузере, можно использовать «React Native for Web» – https://github.com/necolas/react-native-web
Это такая оболочка, которая позволяет делать нативные приложения под каждую платформу, но при этом обеспечивает обратную совместимость, чтобы приложение могло работать и в браузере.
«Чистые PWA» на мобильных пока ещё работают кривенько в качестве приложений, потому что не имеют доступа ко многим родным функциям аппаратов.
Задам глупый вопрос: чем React Native for Web принципиально отличается от Flutter? Начал ковырять последний, по сути, тоже полунативное приложение получается на выходе
Смысл у разработок одинаковый: обеспечить кроссплатформенность приложений.
Разница в вендорах:
— Flutter делает Google
— React Native for Web делает комьюнити Фейсбука
Не сам Фейсбук, но комьюнити, которое выстроено вокруг React Native и React. В свою очередь, React и React Native обслуживаются инженерами фейсбука.
Я предпочитаю наработки Facebook, потому что они прогрессивнее. Гугл иногда очень странным образом «застревает» в своих наработках и/или перестаёт их двигать вперёд или заводит их куда-то не туда. Так было с Material Design, так было с первыми версиями ангуляра и многими другими штуками. А уж сколько они продуктовых наработок похоронили – я вообще молчу.
Спасибо за ответ!
Субъективно, что на Ваш взгляд проще для «не веб-программистов»? Давно хочу сделать визуализацию данных со своего API делать не в Telegram, а в веб и/или в приложение для Android.
Думаю, что Flutter попроще будет. Дело в том, что «React Native for Web» – это оболочка над React Native, который в свою очередь использует компоненты и принципы React.
То есть для его использования желательно изучить:
1. React
2. React Native
3. React Native for Web
4. При этом для стилизации UI тоже нужно будет подключать какой-то отдельный компонент.
В свою очередь Flutter более целостный и упакованный – в нём достаточно хорошо интегрированы готовые виджеты, компоненты и всё это основано на языке программирования Dart 🙂 То есть Flutter, как мне кажется, проще учить с нуля, не проходя поэтапное изучение различных технологий.
При этом, в обоих случаях, конечно, должны быть базовые знания HTML/CSS/JS и понимание архитектуры мобильных платформ.
Что такое PWA-приложения и сколько можно заработать на их создании
Приложения для мобильных устройств постепенно вытесняют сайты с устройств пользователей и выходят на первый план. Некоторые люди предпочитают делать покупки, читать новости и решать другие задачи с помощью сайтов, но со временем их становится всё меньше.
Владельцы бизнеса понимают, что за приложениями будущее, но не все хотят тратить сотни тысяч рублей на поддержку цифрового продукта. Поэтому они ищут альтернативные варианты и находят PWA-приложения. В статье расскажем, как они работают и сколько в среднем стоит разработка.
Что такое PWA-приложения
PWA расшифровывается как Progressive Web Application. Это технология, которая позволяет взаимодействовать с сайтами на мобильных устройствах, как с приложением. При этом PWA-приложение необязательно размещать в Google Play или App Store.
Особенность прогрессивных приложений в том, что они устанавливаются на устройство пользователя в один клик. Надо согласиться с добавлением на главный экран и можно пользоваться кэшированной версией страницы. Правда, её возможности ограничены.
PWA появились не сегодня, а уже несколько лет активно используются в интернете. Многие топовые компании сделали себе прогрессивные приложения в дополнение к обычным, которые можно загрузить из маркетплейсов.
Некоторые пользователи принципиально не пользуются Google Play и App Store из-за ограничений сервисов. Они не хотят видеть рекламу на смартфоне и устанавливают приложения из сторонних источников. На Android можно легко обойти ограничения системы, а вот на Apple устройствах всё не так просто.
Концепция PWA-приложений выглядит привлекательно, потому что с точки зрения бизнеса можно сэкономить много ресурсов. Не нужна команда программистов для разработки и поддержки цифрового продукта, нет необходимости тратить время на модерацию и следить за отзывами.
Недостатков тоже хватает, но глобальная экономия и высокая конверсия заставляют предпринимателей освоить новую технологию. Для сравнения, разработка прогрессивного веб-приложения стоит до 10 тысяч рублей. Его можно даже собрать самостоятельно, но лучше доверить задачу специалисту.
Для разработчика PWA-приложения — отличная возможность расширить перечень услуг. Чтобы хорошо зарабатывать на создании нативных приложений, нужно потратить несколько лет на изучение Swift и других языков программирования. И даже в этом случае нет гарантий, что получится обеспечить стабильный поток заказов.
С прогрессивными приложениями всё гораздо проще. Создавать их можно даже в конструкторах и пользоваться ими на постоянной основе. Правда, такой вариант подходит для простых сайтов, где нет уникальных инструментов со сложной логикой.
Установка PWA в один клик выгодна и для пользователей, и для создателей сайта. Например, можно разработать приложение для интернет-магазина, предложить пользователям добавить его на главный экран и они смогут заказывать товары без установки нативного приложения.
Эффективность PWA напрямую зависит от подхода разработчика к рабочим процессам. Если он устранил конфликты, исправил баги и окно установки приложения выводится не раз в месяц, то большинство пользователей согласятся с добавлением ярлыка на главный экран.
Стоит отметить, что многие пользователи до сих пор не знают, что такое прогрессивные веб-приложения. Поэтому, когда они видят, что какой-то сайт хочет проникнуть на их устройство, то могут закрывать вкладку браузера.
Перед выводом уведомления об установке PWA можно показать дополнительный блок и кратко рассказать о преимуществах приложения. Тогда пользователи перестанут относиться к нему, как к шпионскому продукту. Расписывать нюансы технологии необязательно, но провести базовую экскурсию стоит.
Противники прогрессивных приложений говорят о том, что нативные приложения гораздо лучше, чем PWA. В их словах есть доля правды, но оба инструмента отлично помогают в решении своих задач.
Прогрессивные приложения — что-то среднее между нативными приложениями и сайтом. Пользователи могут не захотеть тратить время на поиск приложения в маркетплейсах, а установка цифрового продукта в один клик поможет бизнесу сохранить лояльных клиентов.
А разработчикам, в свою очередь, не нужно тратить месяцы на создание кроссплатформенного продукта. Можно получить относительно неплохой доход за несколько дней и перейти к следующей задаче.
Каждый специалист выбирает свой путь, но разработка PWA может принести ощутимую прибыль, если правильно выстроить взаимодействие с заказчиками и рассказать им о преимуществах сотрудничества.
Не все предприниматели, у которых есть сайт, знают о существовании прогрессивных приложений. Они понимают, что денег на разработку нативного приложения не хватит, потому что бизнес пока слабо окупается и на время забудут о продуктах для мобильных устройств.
В таких ситуациях PWA — оптимальное решение, которое позволит сэкономить деньги на первых этапах развития цифрового продукта и даст возможность взаимодействовать с мобильной аудиторией.
Особенности PWA-приложений
Мы уже частично ответили на этот вопрос, но очень важно раскрыть его полностью. Поэтому подробно рассмотрим особенности прогрессивных веб-приложений, чтобы начинающие разработчики и предприниматели смогли узнать о преимуществах и недостатках технологии.
PWA сохраняет важные особенности нативных приложений. Например, есть возможность отправлять пользователям push-уведомления. Многие владельцы интернет-магазинов и других коммерческих площадок инвестируют в приложения, чтобы получить прямой доступ к аудитории.
С сайтов тоже можно отправлять push-уведомления. Но далеко не все пользователи соглашаются на получение оповещений, которые отображаются на главном экране устройства. Потому, что интернет-проекты злоупотребляют этим форматом и уменьшают доверие к нему.
Многие онлайн-предприниматели используют PWA, чтобы дать пользователям возможность взаимодействовать с сайтом даже в офлайн-режиме без подключения к интернету. Это возможно благодаря тому, что в момент установки прогрессивного приложения, на устройство сохраняется кэшированная версия сайта.
Предположим, что клиент хочет купить кроссовки на сайте. Он едет в общественном транспорте и решает выбрать подходящую модель. Сайты интернет-магазинов и нативные приложения будут бесполезны, потому что без подключения к сети информация не обновляется.
А вот PWA отлично справится с задачей — пользователь сможет посмотреть ассортимент даже без интернета. Если в каталоге отображаются характеристики моделей, то потенциальный клиент сможет подобрать нужную модель.
На некоторых устройствах при первом запуске PWA необходимо подключение к интернету, но эту проблему легко решить. Чтобы пользователь понял, как надо действовать, обязательно добавьте инструкцию. Можно прислать ссылку на инструкцию в push-уведомлении или показать короткий блок FAQ перед установкой прогрессивного приложения.
Ещё одна особенность PWA — быстрая загрузка контента. В момент запуска нативное приложение может отправлять десятки и даже сотни запросов к удалённому серверу. Скорость обработки данных зависит от большого количества факторов, поэтому заранее предсказать результат не получится.
Если на сайте установлен SSL-сертификат и работа осуществляется по защищённому протоколу HTTPS, дополнительные настройки для PWA делать не нужно. Установить сертификат можно в несколько кликов почти у любого хостинг-провайдера. После проверки корректности настройки аудитория сможет пользоваться всеми преимуществами защищённого соединения.
Один из главных аргументов противников PWA — минимальное отличие от сайта. Якобы пользователи не увидят разницы между продуктом для мобильных устройств и страницей в браузере. Это действительно так, если прогрессивное приложение просто копирует контент.
При желании можно сделать PWA похожим на нативное приложение. Тогда в адресной строке браузера не будет указан домен сайта. Внешний вид тоже можно изменить, если задействовать CSS-стилизацию и скрипты на JS. Результат зависит от бюджета заказчика и компетенции разработчика.
Сложно представить, что в 2021 году некоторые пользователи экономят место на своих устройствах, но такие случаи не редкость. Некоторые приложения могут весить до 200 МБ и пользователи не откажутся от игр или важных продуктов, чтобы протестировать приложение популярного магазина.
Вес PWA в редких случаях достигает 1 МБ — это ещё один плюс в копилку прогрессивных веб-приложений. К тому же для установки не нужен Google Play, который может отклонить операцию даже когда памяти на устройстве более чем достаточно.
Когда перед предпринимателем возникает проблема выбора между прогрессивным и нативным приложением, то чаша весов в большинстве случаев склоняется в сторону второго варианта. Всё-таки стандартное приложение более привлекательное для пользователей, потому что они привыкли пользоваться смартфонами для решения разных задач, а Play Market всегда под рукой.
PWA подходят в тех случаях, если контент и структура приложения не сильно отличаются от сайта. А вот нативные приложения разрабатывают, чтобы предоставить пользователям несколько форматов взаимодействия с инструментами на выбор.
В приложениях интернет-магазинов почти всегда возможностей больше, чем на сайтах. Это обусловлено тем, что всё больше пользователей переходят на заказы через смартфон. Им проще открыть приложений в один клик, чем вводить адрес в браузере и долго искать нужную страницу.
Прогрессивные веб-приложения поддерживаются на Android и iOS. Поэтому можно сказать, что с кроссплатформенностью всё в порядке. Есть небольшие отличия в особенностях адаптации цифрового продукта под iOS, но они минимальные и на внедрение не уйдёт много времени.
Кроме адаптивности, автономности, высокой скорости загрузки и поддержки SSL, у PWA есть ещё один весомый плюс — использование стандартной структуры URL. Это большая проблема для нативных приложений, поэтому многие сайты используют связку между страницей и экраном в приложении.
К примеру, возникает задача отправить пользователя на определённый якорь. Если есть PWA, то перенаправление к участку контента пройдёт без проблем. А вот с нативным приложением придётся повозиться. Якоря работать не будут, поэтому контент надо будет разделить на несколько страниц.
Прогрессивные веб-приложения используют многие крупные бренды. В их числе Starbucks. Twitter, Telegram, Aliexpress и другие компании. PWA поддерживают все популярные браузеры и они отлично подходят для знакомства пользователей с контентом.
Прогрессивные приложения помогают охватить людей, которые сознательно не устанавливают нативные приложения на свои устройствах в целях экономии пространства или по другим причинам.
Архитектура PWA
Если разобрать прогрессивное веб-приложение на составляющие, то можно выделить 3 компонента. Каждый из них выполняет свои задачи, поэтому все механизмы должны работать сообща, чтобы обеспечить стабильность PWA.
Service Worker называют «сердцем» приложения, которое обрабатывает запросы от браузера. Магия в том, что разработчик может выстроить логику работы так, что браузер будет считать обновлённый контент ответом сервера. На самом деле, все операции осуществляются в хранилище устройства.
PWA не зависит от фреймворков, оно написано на чистом JS. Можно взять готовый Service Worker и подогнать его под свои задачи или написать с нуля. Решение принимает разработчик, исходя из требований к проекту.
Очевидно, что если PWA стандартное и ничего сложного в нём нет, то можно использовать и стандартный шаблон. Писать Service Worker с нуля выгодно, когда заказчик ставит задачу сделать прогрессивное веб-приложение максимально непохожим на сайт.
Второй важный компонент — SSL-сертификат. По стандартам PWA, данные должны передаваться в защищённом виде. Получить сертификат не составит труда, подойдёт даже бесплатный Let’s Encrypt, выпуск которого реализован почти у всех популярных хостинг-провайдеров.
Третий компонент — Application Shell, который представляет собой оболочку нативной программы. App Shell хранится на устройстве клиента и подгружается в момент запуска приложения. Разработчику важно продумать логику и написать несколько скриптов, чтобы графический интерфейс выглядел приятно.
Web App Manifest — как название для книги. Он подсказывает браузеру иконку приложения, его название и другие важные параметры. Браузер понимает, что сайт можно установить на главный экран устройства и говорит об этом пользователям. Если пропустить создание манифеста, PWA не будет корректно работать.
Техническая реализации манифеста предполагает добавление в корень сайта JSON файла, который будет передавать нужные параметры. Существуют конструкторы для генерации манифеста в несколько кликов, благодаря добавлению стандартных полей.
Большинство сайтов используют PWA, чтобы отправлять push-уведомления на смартфон. Пользователи действительно чаще соглашаются получать пуши, когда запрос идёт из приложения, а не сайта.
Поэтому многие владельцы сайтов и маркетологи ставят разработчику задачу настроить канал отправки пушей через прогрессивное приложение. Попутно они решают и другие задачи, но приоритетной является доставка push-уведомлений.
Преимущества и недостатки
Мы уже выяснили, что сильных сторон у PWA много. Но пока они не так распространены, как нативные приложения. Проблема в том, что многие предприниматели считают прогрессивные приложения недостаточно качественными.
Среди главных плюсов можно выделить:
Минусы:
Что касается последнего пункта, то PWA не могут, например, получить доступ к акселерометру и Bluetooth через соответствующее API. Хотя доступ к некоторым системным функциям у них есть.
Как видите, плюсов гораздо больше, чем минусов. Если разработчики смогут показать клиентам преимущества технологии, большинство согласятся создать PWA для своего сайта и будут рады, что сэкономили минимум 30-50 тысяч рублей на создании нативного приложения.
Какие навыки понадобятся разработчику для создания PWA-приложений
Мы выяснили, что прогрессивное приложение состоит из 3 основных компонентов. Service Worker, Manifest и Application Shell решают свои задачи, но все они должны корректно работать, чтобы обеспечить стабильность PWA.
Вообще, у разработчиков есть два основных пути: создавать простые приложения с помощью конструкторов или проектировать цифровые продукты с нуля. Оба варианта актуальны и для нативных приложений, и для PWA.
Если заказчик просит создать прогрессивное приложение, которое повторяет возможности сайта, его можно собрать в конструкторе за 20-30 минут. Существуют сервисы, которые позволяют решить эту задачу максимально быстро.
Например, сервис PWA Builder даёт возможность загрузить стартовые пакеты для создания прогрессивного приложения и публикации в Google Play. Благодаря этому можно решить проблему, которая волнует многих предпринимателей. Пользователи, которые доверяют Play Market, смогут установить приложение после его публикации в маркетплейсе.
Кстати, опубликовать PWA в App Store для iOS тоже можно, но придётся чуть дольше повозиться, чтобы пройти модерацию. Просто так в маркетплейс Apple попасть не удастся, потому что там действуют строгие правила.
Даже если разработчик не знает Swift и особенности платформ для мобильной разработки, он всё равно может работать с PWA. Достаточно знать JavaScript и на базовом уровне разбираться в JSON.
Чтобы создавать нестандартные прогрессивные приложения, придётся углубиться в принципы их работы и протестировать нестандартные инструменты, но для этого не нужно тратить несколько лет. Достаточно пары дней на знакомство с теорией и несколько проектов с нестандартными возможностями для получения базового опыта.
Стоимость разработки PWA-приложений стартует от 5 000 рублей. Конечная цифра зависит от бюджета клиента и подхода разработчика к работе с заказчиками. Если возьметесь за проект на постоянной основе, к начальной цифре можно добавить один или даже два нуля.
Тем, кто хочет много заработать на PWA, стоит внимательно проанализировать ситуацию на рынке. Тогда сможете понять, что придётся либо работать на потоке, либо создать уникальный продукт, которого не будет у конкурентов и повысить стандартный ценник в 2-3 раза.
Стоимость разработки PWA у веб-студий в среднем составляет 10 000 рублей. В некоторых случаях цифра увеличивается ещё на 100-200%. В целом, коммерческие компании положительно относятся к таким бюджетам и большинство настроены на сотрудничество.
Разработка и поддержка прогрессивных приложений может стать хорошим источником дополнительного дохода для разработчика. Останавливаться на сайтах необязательно, так как создавать PWA не так уж и сложно.
Чтобы занять место на рынке, который ещё не перенасыщен специалистами, надо заявить о себе и выстроить понятную схему сотрудничества для заказчиков. Если почувствуете, что можно выставить более высокую цену за услуги, не бойтесь увеличивать стоимость.
У PWA большие перспективы на рынке веб-технологий и пока ещё конкуренция намного ниже, чем в нише создания сайтов или нативных приложений. Сейчас идеальное время, чтобы занять свой кусочек рынка и хорошо зарабатывать.

















