Библиотека Metadata.js
Metadata.js - проект с открытым кодом
Приглашаем к сотрудничеству всех желающих
Почему Metadata.js?
Библиотека предназначена для разработки бизнес-ориентированных и учетных offline-first приложений на JavaScript.
- Для управления данными на стороне браузера, используется Pouchdb и AlaSQL
- Основным серверным хранилищем данных выбрана Couchdb
- Таблицы индексов и регистры остатков, используют PostgreSQL
- Поддержана возможность подключения адаптеров данных к 1С и прочим ORM, SQL и NoSQL серверам
- Metadata.js реализует внутри браузера или Node.js классы DataObj, схожие в своём поведении с объектами платформы 1С, но адаптированными для работы в распределенной среде на плохих каналах связи
Для кого?
Для разработчиков мобильных и браузерных приложений, которым близка парадигма 1С на базе бизнес-объектов: документов и справочников, но которым тесно в рамках платформы 1С.
Metadata.js предоставляет программисту:
- высокоуровневые data-объекты, схожие по функциональности с документами, регистрами и справочниками платформы 1С
- инструменты декларативного описания метаданных и автогенерации интерфейса, схожие по функциональности с метаданными и формами платформы 1С
- средства событийно-целостной репликации и эффективные классы обработки данных, не имеющие прямых аналогов в 1С
Философия
- Не важно, где данные возникли и через какой интерфейс
- Не важно, где данные хранятся физически
- Важно, что данные всегда под рукой. При этом, они строго типизированы, разделяемы и пригодны к репликации
Исходный код
Актуальные файлы библиотек и компонентов, доступны в github.
Отличия от конкурентов
Metadata.js не конкурирует с UI фреймворками, а дополняет их новой абстракцией в виде Объектов и Менеджеров данных. Использование этих классов упрощает разработку сложных интерфейсов бизнес-приложений.
С платформой 1С, metadata так же, не конкурирует, т.к. рассчитана на работу в браузере или на мобильном устройстве в глобальной сети или автономном режиме, в то время, как 1С - для локальной сети и настольных компьютеров.
Благодарности
- Идеологам 1С за прототипы DataObj и DataManager
- Andrey Gershun & M. Rangel Wulff, authors of AlaSQL - Javascript SQL database library
- Авторам PouchDB и CouchDB - NoSQL database and data synchronization engine
- Прочим авторам за их замечательные инструменты, упрощающие нашу работу
Лицензия
MIT
Данная лицензия распространяется на все содержимое репозитория, но не заменеют существующие лицензии для продуктов, используемых библиотекой metadata.js
Шина данных (ESB)