Разработчики сообщества Mozilla представили первый тестовый релиз проекта Web Apps, в рамках которого развивается инфраструктура для разработки и распространения локальных web-приложений. С развитием HTML5-технологий, связанных с поддержкой offline-кэширования ресурсов, вывода 2D и 3D графики и работы с локальным хранилищем данных, браузер выходит за рамки системы для просмотра web-страниц и превращается в платформу для выполнения локально установленных web-приложений. Все наработки проекта распространяются в исходных текстах, под тремя лицензиями MPL 1.1, GPL 2.0 и LGPL 2.1. Серверная часть, необходимая для функционирования каталога приложений, написана на языке Python, а пользовательский интерфейс выполнен целиком на JavaScript.
Для обеспечения управления установкой web-приложений и предоставлением доступа к локальным ресурсам подготовлен расширенный JavaScript API. Запуском и обслуживанием установленных web-приложений занимается специальное дополнение, доступное для браузеров Firefox 4 и Chrome, кроме того развивается программа-клиент для платформы Android. После установки дополнения рядом с адресным полем появляется специальная кнопка, при нажатии на которую отображается список установленных локально web-приложений, которые можно здесь же запустить. Запущенные приложения воспринимаются отдельно и отображаются в отдельной вкладке "App Tab". В будущем разработчики Mozilla намерены реализовать средства для более тесной интеграции web-приложений с операционной системой, обеспечить поддержку выполнения программ как отделенных от браузера виджетов и добавить в систему Firefox Sync возможность синхронизации установленных приложений между несколькими устройствами.
Для обеспечения бесшовного запуска web-приложений в роли обособленных настольных программ, работающих без привязки к интерфейсу браузера, развивается отдельный проект Mozilla Chromeless. Для ораганизации распространения web-приложений в разработке находится инфраструктура для создания каталога Open Web App. Коллекцию концептуальных идей по развитию экосистемы web-приложений можно найти на данной странице.
В настоящее время в каталоге уже можно найти около 20 предназначенных для локальной установки web-приложений. Параметры и ресурсы каждого web-приложения описываются в JSON-формате и сохраняется в отдельный файл webapp.manifest. После подготовки описания приложение может быть доступно для установки через вызов JavaScript-функции navigator.apps.install(), в качестве аргумента которой передается URL к ранее созданному файлу webapp.manifest. Распространение локальных web-приложений планируется организовать через специальные каталоги, которые могут создаваться как индивидуально только для своих программ, так и представлять собой универсальные каталоги-магазины.
Ранее озвученные принципы формирования экосистемы Open Web Apps:
- Предоставление условий для размещения web-приложений, базирующихся только на технологиях HTML5, CSS, Javascript и других открытых web-стандартах, поддерживаемых современными web-браузерами. В каталог не принимаются программы, привязанные к одному конкретному браузеру или платформе и несовместимые с общепринятыми стандартами.
- Доставка приложений и работа с каталогом должна работать одинаково во всех современных браузерах, независимо от операционной системы и включая мобильные устройства;
- Стимулирование разработчиков путём поддержки размещения платных web-приложений. Благодаря единой системе аутентификации, один раз купленное web-приложение сможет быть использовано на различных устройствах пользователя;
- При использовании в web-приложениях функций, связанных с доступом к частной информации (например, доступ к местоположению по GPS), на экран будет выводиться явное предупреждение, дающее пользователю возможность отказаться от включения данной функции;
- Поставка web-приложений от разработчика к конечному пользователю осуществляется напрямую, без сервисов-посредников. Приложения могут быть размещены в сети распределённых хранилищ, которые являются независимыми и могут конкурировать между собой.
- Поддерживается отправка уведомлений из сети (cloud);
- Для web-приложений будет создан интерфейс для организации поиска данных, распределённых между несколькими приложениями, установленными в рамках единого контейнера приложений (как правило, это будет web-браузер);
- Все размещаемые приложения будут проходить строгую, но прозрачную для разработчиков проверку перед их публикацией, особенное внимание будет уделено безопасности и качеству кода.
- Будет приветствоваться размещение приложений, уважающих право частной жизни и не осуществляющих отслеживание или сохранение явно идентифицирующих пользователя данных, без прямой необходимости;
- Все приложения будут доступны и открыты для всех разработчиков и пользователей без ограничений.
|