Capacitor

Бесплатно
Открытый исходный код
Android
iOS

Сайт: capacitorjs.com

Capacitor — это открытая платформа и кроссплатформенный runtime, разработанный для создания мобильных и веб-приложений с использованием стандартных веб-технологий: JavaScript, HTML и CSS. Проект позиционируется как средство для объединения веб-кода с нативными возможностями платформ iOS, Android и с развитием поддержки десктопа и Progressive Web Apps. Capacitor предоставляет механизм выполнения веб-приложения внутри нативного контейнера и обеспечивает двухстороннюю связь между JavaScript и нативными API через систему плагинов.

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

  • Кроссплатформенность: единый веб-код работает на iOS, Android и в браузере с возможностью доступа к нативным функциям.
  • Плагины: модульная система плагинов для доступа к камере, файловой системе, геопозиции, уведомлениям и другим нативным API, с возможностью использовать готовые или писать собственные плагины.
  • Двусторонняя интеграция: упрощённый механизм вызова нативного кода из JavaScript и обратных вызовов с поддержкой промисов и событий.
  • Нативные проекты: сохраняет и управляет нативными проектами, позволяя разработчикам открывать и модифицировать платформо-специфичный код.
  • Интеграция с инструментами сборки: совместимость с современными сборщиками и фронтенд-фреймворками, поддержка сборки веб-артефактов для инъекции в нативный контейнер.
  • Обновляемость веб-слоя: поддержка подходов для обновления веб-контента приложения без пересборки нативной части, в рамках допустимых ограничений платформ.
  • Фокус на стандартах веба: использование стандартных веб-API и минимальная привязка к конкретным фреймворкам, что облегчает переносимость кода.
  • Документация и сообщество: публикация документации и примеров использования, наличие экосистемы плагинов и сообществ разработчиков (уровень поддержки и доступность ресурсов могут меняться со временем).
Подробнее