Технологический стек: различия между версиями

Материал из Intellex
Перейти к навигации Перейти к поиску
 
(не показано 7 промежуточных версий этого же участника)
Строка 1: Строка 1:
Список необходимых для установки и работы сторонних компонентов/систем
* Трехзвенная архитектура
 
* Linux или Windows для серверов баз данных и серверов приложений
== '''<big><u>Плеер</u></big>''' ==
* Использование PostgreSQL как сервера базы данных
{| class="sortable"
*Операционная система Astra Linux
!'''Название'''
*Сервер приложений на Java с возможностью расширения функциональности на java или groovy
!'''Описание'''
* Клиентское приложение написанное на HTML, Java Script, CSS позволяет запуск из любого браузера (Chrome, Edge, FireFox, Safari)
!'''Правообладатель'''
*Поддержка перевода интерфейсов на различные национальные языки
!'''Тип лицензии'''
* Возможность создания облачных решений
!'''Ссылка на файл лицензии'''
|-
|jquery
|Библиотека упрощающая работу с элементами DOM,
событиями и т.п. Многие используемые компоненты созданы как плагины к jquery.
|OpenJS Foundation
|MIT
|https://github.com/jquery/jquery/blob/main/LICENSE.txt|[https://github.com/jquery/jquery/blob/main/LICENSE.txt jquery]
|-
|jquery-ui
|Набор виджетов, построенный на jquery. Используется для
изменения размеров в шапке грида, автокомплита в полях ввода.
|jQuery Foundation
|MIT
|[https://github.com/jquery/jquery-ui/blob/main/LICENSE.txt jquery]
|-
|jquery.cookie
|Работа с cookie файлами (Используется в dynatree)
|Klaus Hartl
|MIT
|[https://github.com/carhartl/jquery-cookie/blob/master/MIT-LICENSE.txt jquery.cookie]
|-
|jquery-doubletap
|Используется для отслеживания двойного тапа по строке грида
|rick olson
|MIT
|[https://github.com/technoweenie/jquery.doubletap/blob/master/LICENSE jquery-doubletap]
|-
|jquery.timeentry
|Ввод времени
|Keith Wood
|MIT
|[http://keith-wood.name/licence.html jquery.timeentry]
|-
|select2
|Поле с выпадающими вариантами (комбобокс) - плагин jquery
|Kevin Brown, Igor Vaynberg, and Select2 contributors
|MIT
|[https://github.com/select2/select2/blob/master/LICENSE.md select2]
|-
|typeahead
|Quicksearch - плагин jquery
|Twitter, Inc
|MIT
|[https://github.com/twitter/typeahead.js/blob/master/LICENSE typeahead]
|-
|handlebars
|Html шаблонизатор
|Yehuda Katz
|MIT
|[https://github.com/handlebars-lang/handlebars.js/blob/master/LICENSE handlebars]
|-
|bootstrap-4.3.1.min
|Библиотека компонентов
|Twitter, Inc.
The Bootstrap Authors
|MIT
|[https://github.com/twbs/bootstrap/blob/v4.0.0/LICENSE bootstrap]
|-
|bootstrap-colorpicker
|Компонент выбора цвета
|Javi Aguilar
|MIT
|[https://github.com/itsjavi/bootstrap-colorpicker/blob/master/LICENSE bootstrap-colorpicker]
|-
|eonasdan-bootstrap-datetimepicker
|Ввод дат
|Jonathan Peterson
|MIT
|[https://github.com/Eonasdan/tempus-dominus/blob/master/LICENSE eonasdan-bootstrap-datetimepicker]
|-
|dynatree
|Отрисовка деревьев (например в редакторе фильтров)
|Martin Wendt
|MIT
|[https://www.submission-faccejpi.com/c_media/modules/dynatree/doc/dynatree-doc.html dynatree]
|-
|popper
|Позиционирование элементов на странице (подсказки,
попапы) Используется в bootstrap
|Federico Zivolo
|MIT
|[https://github.com/popperjs/popper-core/blob/master/LICENSE.md popper]
|-
|summernote
|Wysiwyg компонент
|Summernote Team (<nowiki>https://github.com/orgs/summernote/people</nowiki>)
|MIT
|[https://github.com/summernote/summernote/blob/develop/LICENSE summernote]
|-
|velocity
|Библиотека анимаций (используется в дейтпикере и
при показе ошибок)
|Julian Shapiro
|MIT
|[https://github.com/julianshapiro/velocity/blob/master/LICENSE.md velocity]
|-
|mathjs
|Библиотека для расчета формул
|Jos de Jong
|Apache License 2.0
|[https://github.com/josdejong/mathjs/blob/develop/LICENSE mathjs]
|-
|imask
|Ввод по маске
|uNmAnNeR
|MIT
|[https://github.com/uNmAnNeR/imaskjs/blob/master/LICENSE imask]
|-
|moment
|Работа с датами
|JS Foundation and other contributors
|MIT
|[https://github.com/moment/moment/blob/develop/LICENSE moment]
|-
|date-fns
|Работа с датами
|Sasha Koss and Lesha Koss
|MIT
|[https://github.com/date-fns/date-fns/blob/master/LICENSE.md date-fns]
|-
|gridstack
|Дашборд в произвольных отчетах
|Alain Dumesny
|MIT
|[https://github.com/gridstack/gridstack.js/blob/master/LICENSE gridstack]
|-
|exceljs
|Экспорт данных в excel
|Guyon Roche
|MIT
|[https://github.com/exceljs/exceljs/blob/master/LICENSE exceljs]
|-
|codemirror
|Поле ввода с подсветкой синтаксиса (ввод формул в дизайнерах, дебаггер в
документе/аналитике)
|Marijn Haverbeke <marijnh@gmail.com>, Adrian
Heine <mail@adrianheine.de>, and others
|MIT
GPL-3
|[https://github.com/codemirror/codemirror.next/blob/master/LICENSE-MIT codemirror -MIT]
[https://github.com/codemirror/codemirror.next/blob/master/LICENSE2-GPL3 codemirror-GPL3]
|-
|diff
|Создает объект с различием между 2 текстовыми файлами
|Kevin Decker
|BSD License
|[https://github.com/kpdecker/jsdiff/blob/master/LICENSE diff]
|-
|diff2html
|Отображает различие между 2 файлами (история в дизайнере, компонент
сравнения в аналитике)
|Rodrigo Fernandes
|MIT
|[https://github.com/rtfpessoa/diff2html/blob/master/LICENSE.md diff2html]
|-
|file-saver
|Функция сохранения файлов
|Eli Grey
|MIT
|[https://github.com/eligrey/FileSaver.js/blob/master/LICENSE.md file-saver]
|-
|papaparse
|Парсинг csv файла с переводами
|Matthew Holt
|MIT
|[https://github.com/mholt/PapaParse/blob/master/LICENSE papaparse]
|-
|simmerjs
|Высчитывание уникального селектора для DOM ноды. Используется в
редакторе сценариев
|Gidi Meir Morris AKA "CheKofif"
|MIT
|[https://github.com/gmmorris/simmerjs/blob/master/LICENSE simmerjs]
|-
|sortablejs
|Перетаскивание элементов в списках. Сейчас используется в дизайнерах (напр. ГУИ)
|All contributors to Sortable
|MIT
|[https://github.com/SortableJS/Sortable/blob/master/LICENSE sortablejs]
|-
|ua-parser-js
|Получение информации о версии браузера, используемой пользователем
|Faisal Salman
|MIT
|[https://github.com/faisalman/ua-parser-js/blob/master/license.md ua-parser-js]
|-
|xml-beautify
|Красивое отображение xml (с отступами)
|Tom Misawa
|MIT
|[https://github.com/riversun/xml-beautify/blob/master/LICENSE xml-beautify]
|-
|js-cookie
|Работа с cookie файлами
|Klaus Hartl, Fagner Brack, GitHub Contributors
|MIT
|[https://github.com/js-cookie/js-cookie/blob/master/LICENSE js-cookie]
|-
|cades
|Использование api расширения для подписи электронной подписью
|КриптоПРО
|
|[https://www.cryptopro.ru/about/licenses cades]
|-
|pdf-js
|Отображение pdf файлов
|Mozilla
|Apache License 2.0
|[https://github.com/mozilla/pdf.js/blob/master/LICENSE pdf-js]
|-
|text-encoder
|Поддержка TextEncoder и TextDecoder в старых браузерах.
Используется в jas протоколе
|Joshua Bell
|Apache License 2.0
|[https://github.com/inexorabletash/text-encoding/blob/master/LICENSE.md text-encoder]
|-
|tabulator-tables
|Будет использоваться как замена dev-express для отображения
деревьев в виде таблиц (список фильтров/произвольных отчетов)
|Oli Folkerd
|MIT
|[https://github.com/olifolkerd/tabulator/blob/master/LICENSE tabulator-tables]
|-
|chartjs
|Будет использоваться как замена highcharts для отрисовки графиков
|Chart.js Contributors
|MIT
|[https://github.com/chartjs/Chart.js/blob/master/LICENSE.md chartjs]
|-
|jszip
|Работа с zip архивами
|Stuart Knightley, David Duponchel, Franz Buchinger, António Afonso
|MIT
GPL 3
|[https://github.com/Stuk/jszip/blob/master/LICENSE.markdown jszip]
|-
|addclear
|Добавляет крестик для очистки поля ввода
|Stephen Korecky
|MIT
|[https://github.com/skorecky/Add-Clear/blob/master/LICENSE addclear]
|-
|babel
|Компилятор, преобразующий современный синтаксис js в синтаксис понятный
старым браузерам.
|Sebastian McKenzie and other contributors
|MIT
|[https://github.com/babel/babel/blob/main/LICENSE babel]
|-
|resize-observer-polyfill
|Полифилл resizeObserver для поддержки 49 хрома
|Denis Rul
|MIT
|[https://github.com/que-etc/resize-observer-polyfill/blob/master/LICENSE resize-observer-polyfill]
|-
|tippy.js
|Отображение подсказок при наведении
|atomiks
|MIT
|[https://github.com/atomiks/tippyjs/blob/master/LICENSE tippy.js]
|}
 
== Дизайнеры ==
{| class="sortable"
!Название
!Описание
!Правообладатель
!Тип лицензии
!Ссылка на файл лицензии
|-
|bootstrap-daterangepicker
|Ввод диапазона дат (два дейтпикера показанные
рядом) Используется только в дизайнере переходов
|Dan Grossman
|MIT
|[https://github.com/dangrossman/daterangepicker/blob/master/README.md bootstrap-daterangepicker]
|-
|mxgraph
|Отрисовка графов. Дизайнер переходов и структуры
|David Benson
|Apache License 2.0
|[https://github.com/jgraph/mxgraph/blob/master/LICENSE mxgraph]
|-
|save-svg-as-png
|Сохранение схем в дизайнерах, как картинок png
|Eric Shull
|MIT
|[https://github.com/exupero/saveSvgAsPng/blob/gh-pages/LICENSE save-svg-as-png]
|-
|vis-network
|Отображение зависимостей куба в дизайнере
|Almende B.V.
|MIT
Apache License 2.0
|[https://github.com/visjs/vis-network/blob/master/LICENSE-MIT vis-network-MIT]
[https://github.com/visjs/vis-network/blob/master/LICENSE-APACHE-2.0 vis-network-APACHE-2.0]
|}
 
== Сборка ==
{| class="sortable"
|Название
|Описание
|Правообладатель
|Тип лицензии
|Ссылка на файл лицензии
|-
|webpack
|Сборка кода, стилей, картинок в бандл
Разные типы файлов обрабатываются плагинами (лоадерами)
|Tobias Koppers
|MIT
|<nowiki>https://github.com/webpack/webpack/blob/master/LICENSE</nowiki>
|-
|gulp
|Автоматизация сборки (с помощью gulp мы запускаем webpack)
|Blaine Bublitz <blaine.bublitz@gmail.com>, Eric Schoffstall <yo@contra.io> and other contributors
|MIT
|<nowiki>https://github.com/gulpjs/gulp/blob/master/LICENSE</nowiki>
|-
|typescript
|Типизация js кода
|Microsoft
|Apache License 2.0
|<nowiki>https://github.com/microsoft/TypeScript/blob/master/LICENSE.txt</nowiki>
|-
|less
|Надстройка над css, для удобства написания стилей
|Alexis Sellier & The Core Less Team
|Apache License 2.0
|<nowiki>https://github.com/less/less.js/blob/master/LICENSE</nowiki>
|-
|core-js
|Сборник полифиллов
|Denis Pushkarev
|MIT
|<nowiki>https://github.com/zloirock/core-js/blob/master/LICENSE</nowiki>
|-
|babel с несколькими плагинами
|@babel/core
@babel/plugin-proposal-object-rest-spread
@babel/plugin-transform-runtime
@babel/preset-env
babel-cli
babel-eslint
|Sebastian McKenzie and other contributors
|MIT
|<nowiki>https://github.com/babel/babel/blob/main/LICENSE</nowiki>
|-
|eslint
|Линтер кода. Нужен для единого стиля кодирования (подсветка ошибок)
|JS Foundation and other contributors
|MIT
|<nowiki>https://github.com/eslint/eslint/blob/master/LICENSE</nowiki>
|-
|del
|Удаление файлов (очистка перед сборкой)
|Sindre Sorhus <sindresorhus@gmail.com> (<nowiki>https://sindresorhus.com</nowiki>)
|MIT
|<nowiki>https://github.com/sindresorhus/del/blob/main/license</nowiki>
|-
|gulp-svgstore
|Сборка svg иконок в один файл
|Andrey Kuzmin
|MIT (указана только в package.json)
|<nowiki>https://github.com/w0rm/gulp-svgstore/blob/main/package.json</nowiki>
|-
|gulp-tap
|Обработка файлов
|Mario Gutierrez
|MIT
|<nowiki>https://github.com/geejs/gulp-tap/blob/master/LICENSE</nowiki>
|-
|gulp-zip
|Создание war архива
|Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
|MIT
|<nowiki>https://github.com/sindresorhus/gulp-zip/blob/main/license</nowiki>
|-
|gulp-rename
|Переименование файлов
|Hector Guillermo Parra Alvarez
|MIT
|<nowiki>https://github.com/hparra/gulp-rename/blob/master/LICENSE</nowiki>
|-
|fancy-log
|Вывод сообщений в терминал
|Blaine Bublitz <blaine.bublitz@gmail.com> and Eric Schoffstall <yo@contra.io>
|MIT
|<nowiki>https://github.com/gulpjs/fancy-log/blob/master/LICENSE</nowiki>
|-
|ansi-colors
|Раскраска сообщений в терминале
|Brian Woodward
|MIT
|<nowiki>https://github.com/doowb/ansi-colors/blob/master/LICENSE</nowiki>
|-
|cross-env
|Установка переменных среды в windows
|Kent C. Dodds
|MIT
|<nowiki>https://github.com/kentcdodds/cross-env/blob/master/LICENSE</nowiki>
|-
|Плагины для webpack
|
|
|
|
|-
|html-webpack-plugin
|Создание index.html
|
|
|
|-
|webpack-stream
|Обертка над webpack, чтобы он запускался через gulp
|JS Foundation and other contributors
|MIT
|<nowiki>https://github.com/jantimon/html-webpack-plugin/blob/main/LICENSE</nowiki>
|-
|autoprefixer
|Плагин к postcss, добавляющий браузерные префиксы к css
|Andrey Sitnik <andrey@sitnik.ru>
|MIT
|<nowiki>https://github.com/postcss/autoprefixer/blob/main/LICENSE</nowiki>
|-
|mini-css-extract-plugin
|Плагин для webpack помогающий извлечь css в отдельный бандл
|JS Foundation and other contributors
|MIT
|<nowiki>https://github.com/webpack-contrib/mini-css-extract-plugin/blob/master/LICENSE</nowiki>
|-
|circular-dependency-plugin
|Плагин для webpack предупреждающий о циклических зависимостях
|Aaron Ackerman <theron17@gmail.com>
|ISC
|<nowiki>https://github.com/aackerman/circular-dependency-plugin/blob/master/LICENSE</nowiki>
|-
|webpack-bundle-analyzer
|Плагин для webpac для показа информации о размере артефактов сборки
|JS Foundation and other contributors
|MIT
|<nowiki>https://github.com/webpack-contrib/webpack-bundle-analyzer/blob/master/LICENSE</nowiki>
|-
|webpack-stats-plugin
|Плагин для webpack для показа графа зависимостей проекта
|Formidable Labs, Inc.
|MIT
|<nowiki>https://github.com/FormidableLabs/webpack-stats-plugin/blob/main/LICENSE.txt</nowiki>
|-
|@typescript-eslint/eslint-plugin
@typescript-eslint/parser
|Правила для eslint
|JS Foundation and other contributors
|Наследованная от BSD 2
|<nowiki>https://github.com/typescript-eslint/typescript-eslint/blob/master/LICENSE</nowiki>
|-
|
|
|
|
|
|-
|Загрузчики для webpack
|
|
|
|
|-
|file-loader
|Обработка медиафайлов при сборке
|JS Foundation and other contributors
|MIT
|<nowiki>https://github.com/webpack-contrib/file-loader/blob/master/LICENSE</nowiki>
|-
|babel-loader
|Обработка js кода при сборке (транспиляция под старые браузеры)
|Luís Couto <hello@luiscouto.pt>
|MIT
|<nowiki>https://github.com/babel/babel-loader/blob/main/LICENSE</nowiki>
|-
|less-loader
|Обработка css при сборке
|JS Foundation and other contributors
|MIT
|<nowiki>https://github.com/webpack-contrib/less-loader/blob/master/LICENSE</nowiki>
|-
|noop-loader
|Пропуск определенных файлов при сборке
|Knut Helland
|ISC (указана в package.json)
|<nowiki>https://github.com/KnutHelland/noop-loader/blob/master/package.json</nowiki>
|-
|postcss-loader
|Обработка css при сборке
|JS Foundation and other contributors
|MIT
|<nowiki>https://github.com/webpack-contrib/postcss-loader/blob/master/LICENSE</nowiki>
|-
|resolve-url-loader
|Обработка медиафайлов при сборке
|bholloway
|MIT (указана в package.json)
|<nowiki>https://github.com/bholloway/resolve-url-loader/blob/v4-maintenance/package.json</nowiki>
|-
|raw-loader
|Обработка предзагруженных библиотек
|JS Foundation and other contributors
|MIT
|<nowiki>https://github.com/webpack-contrib/raw-loader/blob/master/LICENSE</nowiki>
|-
|script-loader
|Обработка предзагруженных библиотек
|JS Foundation and other contributors
|MIT
|<nowiki>https://github.com/webpack-contrib/script-loader/blob/master/LICENSE</nowiki>
|-
|style-loader
|Обработка css при сборке
|JS Foundation and other contributors
|MIT
|<nowiki>https://github.com/webpack-contrib/style-loader/blob/master/LICENSE</nowiki>
|-
|text-loader
|Обработка html шаблонов
|Danny Fenstermaker
|ISC (указана в package.json)
|<nowiki>https://github.com/dfenstermaker/text-loader/blob/master/package.json</nowiki>
|-
|ts-loader
|Обработка typescript файлов
|TypeStrong
|MIT
|<nowiki>https://github.com/TypeStrong/ts-loader/blob/main/LICENSE</nowiki>
|-
|url-loader
|Обработка медиафайлов при сборке
|JS Foundation and other contributors
|MIT
|<nowiki>https://github.com/webpack-contrib/url-loader/blob/master/LICENSE</nowiki>
|-
|css-loader
|Обработка css при сборке
|JS Foundation and other contributors
|MIT
|<nowiki>https://github.com/webpack-contrib/css-loader/blob/master/LICENSE</nowiki>
|-
|exports-loader
|
|JS Foundation and other contributors
|MIT
|<nowiki>https://github.com/webpack-contrib/exports-loader/blob/master/LICENSE</nowiki>
|}

Текущая версия на 08:10, 27 апреля 2022

  • Трехзвенная архитектура
  • Linux или Windows для серверов баз данных и серверов приложений
  • Использование PostgreSQL как сервера базы данных
  • Операционная система Astra Linux
  • Сервер приложений на Java с возможностью расширения функциональности на java или groovy
  • Клиентское приложение написанное на HTML, Java Script, CSS позволяет запуск из любого браузера (Chrome, Edge, FireFox, Safari)
  • Поддержка перевода интерфейсов на различные национальные языки
  • Возможность создания облачных решений