Overview: What's in the box?

This documentation is a work in progress. It describes prerelease software, and is subject to change.

The pwa-starter-kit is a set of templates you can use as a starting point for building PWAs. Out of the box, the default template gives you the following features:

Other templates

If you already know what you’re doing and want a different template to start from, we’ve created several separate templates, with different sets of features:

template-typescript (code, demo)

This template is the same as the master template, but implemented using TypeScript.

template-minimal-ui (code, demo)

This template uses Redux for state management like the master template, but doesn’t use any of the app-layout elements (app-header or app-drawer) for the responsive UI.

template-no-redux (code, demo)

This template has the same UI elements as the master one (app-layout elements, theming, etc), but does not use Redux for state management. Instead, it does a properties-down-events-up unidirectional data flow approach, where the data source of truth is mutable, and individual elements (specifically, each view) own parts of the entire application state.

template-responsive-drawer-layout (code, demo)

This template is very similar to the master template, in the sense that it keeps both Redux for state management, and all of the UI elements. The main difference is that the wide screen layout displays a persistent app-drawer, inline with the content.

pwa-helpers

A lot of the reusable functionality of pwa-starter-kit has already been pulled out as helper methods, into a separate repo. The pwa-helpers repo contains:

Each of these helpers is very small, and can be implemented in many different, bespoke ways. However, they each represent a feature that is often needed across many different applications, so unless you already have a solution planned for your app, you could use one of these.