πŸ“±πŸŒπŸ“‹ wq: a modular framework supporting web / native apps for mobile surveys and geospatial data collection. Powered by Django REST Framework, Redux, React, and Material UI.

wq wq Last update: Jan 17, 2024

wq

wq is a modular framework for field data collection and surveys via offline-capable mobile web apps.

Getting Started

wq can be installed via GitHub, Docker, PyPI, NPM, or a <script> tag via CDN. See the documentation for more information on getting started.

Dev Container (recommended)

  1. Go to https://github.com/wq/wq-docker-template
  2. Select "Use this template" -> "Create a new repository"
  3. Open the dev container via GitHub Codespaces or Docker Desktop

Docker Base Image

docker run ghcr.io/wq/base:main

Python

python3 -m venv venv
. venv/bin/activate
python -m pip install wq
wq create -d myproject.example.com myproject

Node

npx create-react-app myproject --template @wq

CDN

<script type="module">
    import wq from 'https://unpkg.com/wq';
    wq.init({});
</script>

Features

wq is made up of the following submodules, which are maintained as separate packages.

Module Github PyPI npm Description
wq wq/wq wq wq Top level package (specifies submodules as dependencies)
wq.app wq/wq.app wq.app @wq/app A JavaScript+Python library for building robust offline-capable HTML5 data entry apps.
wq.build wq/wq.build wq.build wq command line interface.
wq.create wq/wq.create wq.create Project template and scaffolding tools.
wq.db wq/wq.db wq.db Django REST framework extension with design patterns for CRUD APIs.

Subscribe to our newsletter