Проект RethinkDB представил Horizon, открытую альтернативу Firebase
Используя Horizon разработчики могут сосредоточить всё внимание на создании работающего в браузере кода приложения, обращаясь к типовому бэкенду через специальный API, который кроме работы с данными также позволяет организовать аутентификацию, разграничение доступа, управление пользователями и другие функции. По своей сути Horizon может рассматриваться как открытая и запускаемая на своих мощностях альтернатива продвигаемого компанией Google проприетарного сервиса Firebase.
Horizon включает в себя:
- Сервер для организации работы бэкенда, построенный на базе фреймворка Node.js, технологии WebSocket и СУБД RethinkDB, обеспечивающий построенное хранение данных, аутентификацию пользователей, проверку прав доступа и перенаправление потоков между приложениями в режиме реального времени.
- Клиентская JavaScript-библиотека, которую можно использовать на стороне выполняемого в браузере web-приложения (фронтэнда) для сохранения JSON-документов в БД, отправки запросов и подписки на получение обновлений информации;
- Утилита командной стоки "hz" для генерации шаблонов типовых проектов, запуска локального сервера Horizon и размещение приложений в облаке.
Первый выпуск предоставляет следующие API:
- Subscribe - потоковый API для построения realtime-приложений, работающих в браузере без необходимости написания серверного кода;
- Auth - API аутентификации, поддерживающий типовых провайдеров аутентификации, включая Facebook, Twitter, Google и GitHub
- Identity - API для управления учётными записями пользователей;
- Permissions - модель безопасности, позволяющая разработчику ограничить доступ к данным;
В будущих выпусках планируется появление:
- Session - управления сеансами;
- Geolocation - API для создания приложений, манипулирующих данными о местоположении пользователя;
- Presence - API для определения присутствия пользователя в online и информирования об этом других пользователей;
- Plugins - система подключения плагинов, расширяющих функциональность Horizon, например, средства для создания новых сервисов;
- Backend - API и протокол для интеграции написанных с использованием библиотеки Horizon web-приложений со сторонними реализациями бэкендов.
- Встроенный web-интерфейс для интерактивного просмотра данных на бэкенде;
- Улучшенные средства управления соединениями и восстановлением после разрыва связи;
- Возможность создания собственных команд Horizon с использованием языка запросов ReQL и JavaScript;
- Поддержка загрузки файлов от клиента;
- Аутентификация по паролю (в дополнение к OAuth-провайдерам);
- Встроенная поддержка извлечения данных с использованием языка запросов GraphQL.
Источник: http://www.opennet.ru/opennews/art.shtml?num=44464
|
0 | Tweet | Нравится |
|