English description | Описание на русском
Вся конфигураци сборщика находится в одном файле — tars-config.js в корне проекта.
Нужно перезапустить сборку, чтобы изменения применились.
Type: Array
Default: []
Example:
postcss: [
{
name: 'postcss-short',
options: {
deny: ['text']
}
}, {
name: 'postcss-size',
options: {}
}
]Здесь можно перечислить используемые постпроцессоры. Обязательно выполните установку используемых постпроцессоров.
Type: Object
Конфиг для работы с svg-графикой в TARS.
Type: Boolean
Default: true
Включение поддержки svg в проекте.
Type: String
Default: sprite
Способ работы с svg-графикой. Доступны SVG-спрайт и SVG-symbols.
Поддерживаются значения sprite для использования SVG-спрайтов и symbols для svg-symbols.
При выборе "symbols", сборка для IE8 недоступна
Type: Object
Описывает конфиг для работы с svg-symbols.
Type: String
Default: inject
Устанавливает способ подключения svg-symbols на странице.
Поддерживаются значения:
inject— инжект в тело HTML;separate-file— хранение в отдельном файле;separate-file-with-link— хранение в отдельном файле, при этом каждая иконка подключается из этого файла.
Type: Boolean
Default: true
Хранение в отдельном файле нативно поддерживается во всех современных браузерах, кроме IE9 - Edge. Для них используется полифл. Если вы не поддерживаете эти браузеры, то можете выставить false.
Type: String
Default: ''
Вы можете задать путь, по которому файл с svg-symbols будет находится в проекте. По умолчанию файл создается в корне готовой сборки.
Пример значения: static/images/.
Type: Object
Конфиг для работы с CSS в TARS. Доступен с версии TARS 1.8.0.
Type: String
Default: concat
Способ обработки CSS-кода.
Доступны:
concat— конкатенация CSS-файлов в один в определенном порядке;manual— использование точек входа (основных файлов), в которые импортируются файлы стилей проекта.
Type: Object
Конфиг для работы с JavaScript в TARS. Доступен с версии TARS 1.7.0.
Type: String
Default: concat
Способ обработки JavaScript-кода.
Доступны:
concat— конкатенация JavaScript-файлов в один в определенном порядке;modular— использование бандлера, который будет разрешать зависимости между JavaScript-файлами.
Type: String
Default: webpack
В bundler можно указать используемый сборщик JavaScript-кода, если в качестве workflow был выбран modular.
Пока что доступен только webpack.
Type: Boolean
Default: true
Включение проверки ошибок в JavaScript-коде и code-style (опции для eslint находятся в корне, в файле .eslintrc. Весь список доступных опций можно найти тут). Также, вы можете точечно отключить линтинг файлов используя .eslintignore в корне проекта.
Type: Boolean
Default: false
Данная опция позволяет использовать Babel для поддержки ES6(ES7) синтаксиса. Конфиг для babel находит в корне проекта, в файле .babelrc. С доступными опциями .babelc можно ознакомится на официальном сайте. Вам не нужно задавать опции 'filename' и все что связанно с 'sourcemaps', так как эти оцпии уже заданы в сборщике.
Type: Object
Здесь можно управлять подключением особенных фич для webpack.
Type: Boolean
Default: false
Включение технологии горячей замены компонентов (Hot module replacement).
Type: Object
Default: {}
Параметры для Provide Plugin. Автоматически загружаемые модули.
Type: Boolean
Default: true
Удаление console.log, alert и debugger из JavaScript-файлов в сборке. Является опцией, так как иногда требуется оставить console.log в готовой сборке.
Type: Array of Strings
Default: []
Данная опция имеет смысл только при выборе concat в качестве workflow. В этом случае весь JavaScript-код проекта собирается в 1 файл, кроме javascript-файлов, которые находятся в директории separate-js. Если необходимо включить в сборку файлы из других мест (например, вы создали отдельную директорию для JavaScript-файлов), то можно прописать в эту опцию путь или массив путей (паттернов путей, типа controllers/**/*.js) до JavaScript-файлов, которые должны попасть в сборку до js-компонентов (jsPathsToConcatBeforeModulesJs) и JavaScript-файлов, которые должны быть подключены после JavaScript-файлов компонентов (jsPathsToConcatAfterModulesJs).
Это будет полезно, при разработке сайта на JavaScript-фреймворке с какими-либо своими сущностями (контроллер, роутер и т.д.). Вам не требуется лезть в таски, просто создавайте отдельные директории, указывайте, за какими файлами следить.
Также есть возможность отключить eslint для этих файлах (опции lintJsCodeBeforeModules и lintJsCodeAfterModules).
Type: Object
Default:
sourcemaps: {
js: {
active: true,
inline: true
},
css: {
active: true,
inline: true
}
},Конфиг для sourcemaps. Sourcemaps для js и css работают только в dev-режиме. active {Boolean}: использовать sourcemap или нет. inline {Boolean}: использовать встроенные сорсмапы или генерировать их отдельным файлом.
Конфиг для модуля нотификаций.
При включенных вотчерах, при изменениях в файлах проекта будут выдаваться системные уведомления, в которых будет указано, какой файл изменен, какой таск выполнен.
Имеет вложенные опции.
Type: Boolean
Default: true
Включение нотификации. Отключить нотификации можно с помощью переменных окружения:
export DISABLE_NOTIFIER=true;
#или
export NODE_ENV=production;Переменные окружения имеют больший вес и перезаписывают значение в tars-config.js
Type: String
Default: 'TARS notification'
Каждая нотификация имеет тайтл. Если вы хотите видеть другой тайтл, то смело меняйте эту опцию.
Звуковые уведомления при нотификациях
Type: String, undefined
Default: undefined
В данную опцию передается название системного звука, который будет звучать при нотификации, если сборка прошла успешно. Если звуков не нужно, то просто оставляйте undefined.
Type: String, undefined
Default: undefined
В данную опцию передается название системного звука, который будет звучать при нотификации, если сборка прошла с ошибками. Если звуков не нужно, то просто оставляйте undefined.
Type: Boolean
Default: false
Включение минифицирования HTML. Если опция установлена в false, то скомпилированный HTML будет отформатирован.
Type: Boolean
Default: true
Включает построение относительного пути от текущей страницы до папки со статикой. В случае использования сервера, который будет раздавать статику (например, режим livereload) путь до статики не будет генерироваться, так как статика раздается сервером.
Type: String
Default: './dev/'
В данную опцию передается строка с относительным или абсолютным путем к той папке, куда должен собираться проект в режиме разработки.
Использование / после названия пути обязательно, чтобы не возникли проблемы с доступом к файлам.
Type: String
Default: './builds/'
В данную опцию передается строка с относительным или абсолютным путем к той папке, куда должен собираться проект.
Если используется useBuildVersioning (использовать версионирование билдов), то каждый новый билд будет находится в отдельной папке с именем — версией билда, и каждая эта папка будет находится по пути, указанном в buildPath.
Использование / после названия пути обязательно, чтобы не возникли проблемы с доступом к файлам.
Type: Boolean
Default: true
Использовать версионирование билдов. Название версии состоит из имени билда + дата создания билда (точность до секунды).
Type: Boolean
Default: true
Создание архива с готовой версткой. Архив создается внутри папки с билдом. Если вы указали в файле package.json имя проекта, то имя архива будет взято оттуда, иначе по умолчанию будет 'build'. Также будет добавлена дата создания билда (точность до секунды).
Type: Number
Default: 4096
По умолчанию, число одновременно открытых файлов в ОС (Unix-системах) ограничено. Так как TARS работает на Gulp, то число одновременно открытых файлов может быть велико. Чтобы избежать проблем с этим, можно настроить ulimit (в нашем случае настраивается число одновременно открытых файлов). Если в проекте используется значительное число файлов и часть из них не попадает в конечную сборку, то просто увеличьте даную опцию.
Данные опции можно менять только перед командой init, так как ни на какую команду они больше не влияют. Кроме useImagesForDisplayWithDpi, об этом подробнее ниже.
Type: String
Default: handlebars
Options: jade, pug, handlebars
В данной опции указывается используемый шаблонизатор. Доступны jade, pug и handlebars. В опцию передается название шаблонизатора с маленькой буквы.
Если вы хотите писать на простом html, то оставьте опцию без изменений.
Type: String
Default: scss
Options: scss, sass, less, stylus
В данной опции указывается используемый css-препроцессор. Доступны scss, less или stylus. В опцию передается название css-препроцессора с маленькой буквы.
Type: Array
Default: [96]
В данной опции указываются плотности пикселей различных экранов, которые будут поддерживаться вашим проектом. Поддерживаются значения:
- 96 — 1 dppx (обычные экраны)
- 192 — 2 dppx (ретина)
- 288 — 3 dppx (например, nexus 5)
- 384 - 4 dppx (например, nexus 6)
На основе данной опции создаются папки для png-изображений различных размеров, для разных экранов. Подробнее в разделе Работа с изображениями.
Данную опцию можно менять когда угодно, но есть пара важных моментов. Если вы меняете данную опцию перед командой gulp|tars init, то больше ничего делать не нужно. Если опция меняется потом, то необходимо руками создать (или удалить) директории в папке static/img/sprite/. Формат названия папки — значение опции + dpi. Например, 192dpi.
Опции для именования основных папок со статикой. Если вы меняете опции из этого блока перед командой gulp|tars init, то больше ничего делать не нужно. Если опция меняется потом, то необходимо руками переименовать соответствующие директории.
Type: String
Default: 'static'
Имя папки, в которой будет лежать статика проекта. Если вы только разрабатываете проект локально, то необходимо, чтобы значение этой опции совпадало со значением опции staticPrefix
Type: String
Default: 'img'
Имя папки, в которой будут лежать картинки проекта. Чаще всего именно эта папка имеет различные значения, поэтому название этой директории опционально.
Type: String
Default: 'components'
Имя папки, в которой будут лежать компоненты (модули для TARS версии 1.7.0 и ниже) проекта.
Опция больше не поддерживается, используйте svg.active
Type: Boolean
Default: true
Включение поддержки сборщиком svg-изображений.
Опция больше не поддерживается, а значение задается в tars/tars.js
Type: String
Default: ../imageFolderName/
Кастомный пути до папки со статикой из css-файлов. imageFolderName берется из опции imagesFolderName
Опция была переименована в lint и находится в конфиге js.
Какие еще браузеры доступны, можно глянуть тут.
Опция была переннесена в plugins-config.json.
Опция была переннесена в .browserslistrc.
Конфиг для модуля Browsersync. Данный модуль реализует возможность livereload в браузере, расшаривание верстки во внешний веб, создание локального сервера.
Опция была переннесена в plugins-config.json. На данный момент вы можете передать любую опцию для browsersync.
Значение данной опции задает значение плейсхолдеру %=static=% (static или %=staticPrefix=% до версии TARS 1.6.0), который может использоваться в любых файлах проекта.
Опция больше не поддерживается, а значение задается в tars/tars.js