# polymer-bootlicker

> > Configurable build tasks for Polymer applications.

Latest version **0.0.13** (published 2016-10-17) · ISC license · 0 weekly downloads

## Install

```sh
npm install polymer-bootlicker
pnpm add polymer-bootlicker
yarn add polymer-bootlicker
bun add polymer-bootlicker
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.0.13 |
| Published | 2016-10-17 |
| First published | 2016-01-27 |
| Weekly downloads | 0 |
| License | ISC |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 21 |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | Filipe Araujo |
| Maintainers | filipearaujo |

## Links

- npm: https://www.npmjs.com/package/polymer-bootlicker
- npm.io page: https://npm.io/package/polymer-bootlicker

## Dependencies (21)

- [del](https://npm.io/package/del.md) ^2.2.0
- [nyc](https://npm.io/package/nyc.md) ^8.3.1
- [lazypipe](https://npm.io/package/lazypipe.md) ^1.0.1
- [gulp-size](https://npm.io/package/gulp-size.md) ^2.0.0
- [polybuild](https://npm.io/package/polybuild.md) ^1.1.0
- [gulp-babel](https://npm.io/package/gulp-babel.md) ^6.1.1
- [undertaker](https://npm.io/package/undertaker.md) ^1.0.0
- [gulp-eslint](https://npm.io/package/gulp-eslint.md) ^3.0.0
- [gulp-uglify](https://npm.io/package/gulp-uglify.md) ^2.0.0
- [gulp-useref](https://npm.io/package/gulp-useref.md) ^3.0.3
- [browser-sync](https://npm.io/package/browser-sync.md) ^2.17.3
- [gulp-cssnano](https://npm.io/package/gulp-cssnano.md) ^2.0.0
- [gulp-htmlmin](https://npm.io/package/gulp-htmlmin.md) ^3.0.0
- [gulp-imagemin](https://npm.io/package/gulp-imagemin.md) ^3.0.0
- [gulp-sourcemaps](https://npm.io/package/gulp-sourcemaps.md) ^2.1.1
- [lodash.defaults](https://npm.io/package/lodash.defaults.md) ^4.1.0
- [gulp-i18n-localize](https://npm.io/package/gulp-i18n-localize.md) ^1.2.1
- [babel-preset-es2015](https://npm.io/package/babel-preset-es2015.md) ^6.16.0
- [lodash.defaultsdeep](https://npm.io/package/lodash.defaultsdeep.md) ^4.4.0
- [eslint-config-google](https://npm.io/package/eslint-config-google.md) ^0.6.0
- [web-component-tester](https://npm.io/package/web-component-tester.md) ^4.3.5

## Recent versions

- 0.0.13 (latest) — 2016-10-17
- 0.0.12 — 2016-09-26
- 0.0.11 — 2016-09-02
- 0.0.10 — 2016-08-31
- 0.0.9 — 2016-08-11
- 0.0.8 — 2016-07-25
- 0.0.7 — 2016-07-23
- 0.0.6 — 2016-07-23
- 0.0.5 — 2016-05-26
- 0.0.4 — 2016-02-04
- 0.0.2 — 2016-01-27
- 0.0.1 — 2016-01-27

## README

# Polymer BootLicker
> Configurable build tasks for Polymer applications.

[![Build Status](https://api.travis-ci.org/filaraujo/polymer-bootlicker.svg)](https://travis-ci.org/filaraujo/polymer-bootlicker)
[![Coverage Status](https://coveralls.io/repos/github/filaraujo/polymer-bootlicker/badge.svg?branch=develop)](https://coveralls.io/github/filaraujo/polymer-bootlicker?branch=develop)

Bootlicker is a collection of gulp tasks which helps organize and build your
Polymer applications. It aims to abstract many of the annoyances around
tooling and provides a simplier, configurable alternative.

## Table of Contents

- [Usage](#usage)
- [Configuration](#configuration)
- [Tasks](#tasks)
- [Registries](#registries)
- [Roadmap](https://github.com/filaraujo/polymer-bootlicker/wiki/RoadMap)

## Usage
When using the Bootlicker registry, it will add default tasks to your
`gulp` instance.

```js
import gulp from 'gulp';
import Bootlicker from 'polymer-bootlicker';

// register bootlicker
gulp.registry(new Bootlicker(config));
```

Now exposes the default tasks.
> gulp --tasks



## Configuration
Default path configuration

```js
{
  paths: {
    app: './app',
    bower: './bower_components',
    components: './app/components/**/*',
    dist: './dist',
    fragments: './app/components/elements.html',
    fonts: './app/fonts/**/*',
    images: './app/**/*.{png,jpg,jpeg,gif}',
    local: './dist/local',
    locales: './locales',
    scripts: './app/**/*.js',
    styles: './app/**/*.css',
    tests: './test'
  }
}
```

You may define a custom configuration which will extend the base configuration.
```js
// custom configuration
let config = {
  paths: {
    dist: './build',
    local: './build/local'
  }
};

gulp.registry(new Bootlicker(config));
```

## Tasks

### Build
Build the local version of the application.
```
gulp build
```

Copy all build resources and html assets into build directory.
```
gulp build:copy
```

Build the distributable version of the application. This includes
optimization and minification of assets.
```
gulp build:dist
```

### Serve
Serve the local version of the application.
```
gulp serve
```

Serve the distributable version of the application.
```
gulp serve:dist
```

### Test
Run  wct locally.
```
gulp test:local
```

Run wct on saucelabs.
```
gulp test:sauce
```

## Registry Tasks
Additional tasks are available

### Fonts
```
gulp font:copy
```

### HTML
Copy bower assets to distribution folder.
```
gulp html:bower:copy
```

Copy components to distribution folder.
```
gulp html:components:copy
```

Polybuild html assets. `polybuild`
```
gulp html:polybuild
```

Copy views to distribution folder.
```
gulp html:views:copy
```

Process html view assets. `sourcemap` `useref` `htmlmin`
```
gulp html:views:process
```

### i18n
Translate asset files. `gulp-i18n-localize`
```
gulp i18n:translate
```

### Images
Copy and process images. `imagemin`.
```
gulp image:copy
```

### Scripts
Copy and process scripts. `eslint` `sourcemap` `babel` `uglify` `minify`
```
gulp script:copy
```

### Server
Start a server instance.
```
gulp server:serve
```

Reload server instance.
```
gulp server:reload
```

### Styles
Copy and process stylesheets. `autoprefix` `sourcemaps` `minify`
```
gulp style:copy
```

### Tests
Copy test assets into temporary test folder.
```
gulp test:copy
```

Run tests locally. `wct`
```
gulp test:local
```

Run test on remote. `wct`
```
gulp test:remote
```

### Tidy

Clean temporary folders.
```
gulp tidy
```

Clean distribution folder.
```
gulp tidy:dist
```

Clean temporary test folders.
```
gulp tidy:tests
```

---
_Source: https://npm.io/package/polymer-bootlicker · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
