generator-polymer-init-paperfire-app
v0.0.1-alpha
Published
A starting point for building Polymer 2.x apps using polymer-build with options for firebase and redux
Downloads
17
Readme
generator-polymer-init-paperfire-app
This template is a starting point for building apps using Polymer Starter Kit with a custom gulp process leveraging polymer-build, the library powering Polymer CLI.
Setup
Prerequisites
First, install Polymer CLI and generator-polymer-init-custom-build using npm (we assume you have pre-installed node.js).
npm install -g polymer-cli
npm install -g generator-polymer-init-paperfire-appInitialize project from template
Generate your new project using polymer init:
mkdir my-app
cd my-app
polymer init paperfire-appStart the development server
This command serves the app at http://localhost:3000 and provides basic URL
routing for the app with live reload using browersync:
npm run devBuild
Rather than rely on the usual polymer build command, this project gives you an
"escape hatch" so you can include additional steps in your build process.
The included gulpfile.js relies on the polymer-build library,
the same library that powers Polymer CLI. Out of the box it will clean the
build directory, and provide image minification. Follow the comments in the
gulpfile.js to add additional steps like JS transpilers or CSS preprocessors.
npm run buildPreview the build
This command serves the minified version of the app at http://localhost:8080:
firebase serveRun tests
This command will run Web Component Tester against the browsers currently installed on your machine:
polymer testAdding a new build step
The gulpfile.js already contains an example build step that demonstrates how
to run image minification across your source files. For more examples, refer to
the section in the polymer-build README on extracting inline sources.
Adding a new view
You can extend the app by adding more views that will be demand-loaded
e.g. based on the route, or to progressively render non-critical sections of the
application. Each new demand-loaded fragment should be added to the list of
fragments in the included polymer.json file. This will ensure those
components and their dependencies are added to the list of pre-cached components
(and will have bundles created in the fallback bundled build).
