2.0.0 • Public • Published


@wq/app provides a configuration-driven JavaScript application controller to facilitate the creation of complete mobile web apps for viewing and submitting field data. @wq/app is the highest-level module in wq.app, and brings together a number of lower-level modules and wq conventions into an integrated API. @wq/app is primarily intended for use as a client for wq.db, but can be customized for use with any REST service.

The specific concepts leveraged by @wq/app include:

  • A specific URL structure that is observed by both the application itself and its REST API.
  • A client-side URL router (@wq/router) and page renderer (@wq/react + @wq/material)
  • A model-driven, localForage-backed cache of REST API responses (@wq/model), with an offline-capable outbox to sync form submissions back to the server (@wq/outbox).
  • A wq configuration object generated by the URL router on the server, that describes the available routes and underlying models.
  • An optional authentication endpoint provided by the REST API, including CSRF tokens to prevent cross-site attacks.
  • A simple plugin API to facilitate adding optional functionality such as interactive maps or even a fully custom data model (via plugin hooks).


InstallationProject LayoutAPIConfigurationPluginsMethods

Package Sidebar


npm i @wq/app

Weekly Downloads






Unpacked Size

47.8 kB

Total Files


Last publish


  • sheppard