☁ wq's db library, extending Django REST framework and Mustache with database models to support design patterns common to field data collection systems for citizen science, crowdsourcing, and VGI.
Python Other
Failed to load latest commit information.
contrib
patterns include base attachment serializers Jun 30, 2016
rest lint (F405) Jun 28, 2016
tests
.gitignore
.travis.yml
LICENSE
README.md
__init__.py simplify wq.db.annotate - rely more on subclassing to customize funct… Feb 16, 2012
default_settings.py
runtests.sh
setup.py

README.md

wq.db

wq.db is a collection of Python modules for building robust, flexible schemas and REST APIs for use in creating field data collection apps and (more generally) mobile-first websites with progressive enhancement. wq.db is the backend component of wq and is geared primarily for use with wq.app, though it can be used separately. wq.db is built on the Django platform.

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

Travis Build Status Python Support Django Support

Getting Started

pip3 install wq.db
# Or, if using together with wq.app and/or wq.io
pip3 install wq

See the documentation for more information.

Features

wq.db provides the following modules:

wq.db.rest

Extends the excellent Django REST Framework with a collection of views, serializers, and context processors useful for creating a progresively enhanced website that serves as its own mobile app and its own REST API. The core of the library is an admin-like ModelRouter that connects REST urls to registered models, and provides a descriptive configuration object for consumption by wq.app's client-side router. wq.db.rest also includes a CRS-aware GeoJSON serializer/renderer.

wq.db.patterns

A collection of design patterns (e.g. identify, relate) that provide long-term flexibility and sustainability for user-maintained data collection applications. These patterns are implemented as installable Django apps.