Skip to main content

Offline-capable HTML5 web and hybrid apps for citizen science field data collection.

Project description

wq.app

wq.app is a suite of Javascript modules and related assets, created to facilitate the rapid deployment of offline-cabable HTML5 mobile and desktop data collection apps for crowdsourcing, citizen science, and volunteered geographic information, as well as professional field data collection. wq.app is the client component of the wq framework, and can be used with any REST service as a backend. In particular, when combined with a Mustache-capable REST service like wq.db, wq.app can be used to create responsive, progressively enhanced websites / apps, that can selectively render individual application screens on the server or on the client depending on project needs, network connectivity, and offline storage availability.

Latest PyPI Release Release Notes Documentation License GitHub Stars GitHub Forks GitHub Issues

Travis Build Status

Getting Started

pip3 install wq.app
# Or, if using together with wq.db
pip3 install wq

See the documentation for more information.

Features

wq.app’s JavaScript modules are built on a number of libraries including RequireJS, jQuery Mobile, Leaflet, d3, and Mustache.js. wq.app extends these libraries with:

  • wq/app.js, a high-level application controller that combines wq/store.js and wq/pages.js into a full configuration-driven CRUD client (optimized for use with wq.db.rest)

  • wq/chart.js, configurable d3-based reusable charts, including time series and boxplots

  • wq/locate.js, utilities for requesting and displaying the user’s location

  • wq/map.js, Leaflet integration for wq/app.js pages that contain geometry (loaded via GeoJSON)

  • wq/router.js, a PJAX-style pushState URL router

  • wq/template.js, A Mustache template renderer and page injector

  • wq/pandas.js, a utility for loading and parsing CSV generated by Django REST Pandas.

  • wq/store.js, a robust localForage-based JSON REST client

  • wq/model.js, a lightweight implementation of models / collections

  • wq/outbox.js, an offline queue of <form> submissions for later synchronization

  • and a number of other useful utilities

To facilitate compact deployment, wq.app provides a Python-based build process for compiling wq apps: inlining templates, optimizing code (via r.js), and generating an application cache manifest. wq.app also includes jquery-mobile.scss, a SASS/SCSS stylesheet for generating custom jQuery Mobile themes.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wq.app-1.0.0b1.tar.gz (958.0 kB view details)

Uploaded Source

File details

Details for the file wq.app-1.0.0b1.tar.gz.

File metadata

  • Download URL: wq.app-1.0.0b1.tar.gz
  • Upload date:
  • Size: 958.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for wq.app-1.0.0b1.tar.gz
Algorithm Hash digest
SHA256 3db7fc5e52a97d41aebfa255bbad3914d6b7939b37eb6562f852bc2486bf7ccc
MD5 77e5c69a87751365a5cb04eb6e5194f0
BLAKE2b-256 08e9336cc927ec7fd0a09d481ccd2d12169b38e20bd5158fe5510753cebf2cca

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page