The WyoBio mobile app enables citizen scientists to report species observations and photos in the U.S. state of Wyoming. The app is one component of the Wyoming Biodiversity Citizen Science Initiative (WyoBio). Contributed observations are shared on a publicly accessible web map created to help track species distributions in the state.
The WyoBio app complements the web map by focusing on making data collection quick and reliable. All collected attributes and photos are stored in an offline "outbox" and synced to the server upon request. The app can validate species names in the field, via a built-in offline-accessible species taxonomy. The app is available through the Android and iOS app stores.
The WyoBio app is based on Species Tracker, a prototype concept developed at the Citizen Science 2015 hackfest. The client app uses a relatively standard wq.app implementation that communicates with a wq.db-powered REST API. However, rather than the default PostgreSQL backend used by Species Tracker, the Django server for WyoBio feeds observational data directly into an ArcGIS schema stored in a MS SQL database. This ensures that observations are instantly available in the ArcGIS-powered WyoBio web map. The server also features a custom authentication module to integrate with WyoBio's existing PHP-based authentication system. The WyoBio app is compiled through PhoneGap Build for distribution on the Android and iOS app stores.
The WyoBio app uses wq/outbox.js to ensure that observations can be stored offline until they are synced later. While this functionality already existed in wq, it previously did not support storing photos due to limitations with the
localStorage API. As part of the development of the WyoBio app, wq/store.js was overhauled to use localForage, which supports storing binary data (
Blob) in offline storage such as IndexedDB (which has a larger file size). Notably, this offline file storage functionality works in the web version of the WyoBio app in addition to the Android and iOS versions.
© 2013-2017 by S. Andrew Sheppard