Skip to content

A Python-Django web application enabling users to upload, share, and display data from their environmental monitoring sites via the app's ODM2 database. Data can either be automatically streamed from Internet of Things (IoT) devices, manually uploaded via CSV files, or manually entered into forms.

develop
Switch branches/tags
Code

Latest commit

Modified conda environment to address #481, #495, part of the way to #493. All other dependencies were updated by conda & pip to latest that works with Python 2.7 and Django 1.11.29. This has been tested and works on my local dev system.
a14d032

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
doc
 
 
src
 
 
 
 
 
 
 
 

ODM2DataSharingPortal

This repository contains the code for a Python-Django web application enabling users to upload, share, and display data from their environmental monitoring sites. Data can either be automatically streamed from Internet of Things (IoT) devices, manually uploaded via CSV files, or manually entered into forms.

The ODM2 Data Sharing Portal is built on the Observations Data Model Version 2 (ODM2) information model and supporting software ecosystem, includuing an ODM2 database instance in PostgreSQL for data storage in the backend. Any environmental IoT device or computer can upload data to the web app via HTTP POST. Complete documentation is available in our open-access journal article "Low-Cost, Open-Source, and Low-Power: But What to Do With the Data?".

Data Sharing Portal Architecture

The ODM2 Data Sharing Portal was initially designed to support the EnviroDIY community for do-it-yourself environmental science and monitoring and their network of open-source monitoring stations built with Arduino-framework dataloggers such as the EnviroDIY Mayfly Datalogger.

The ODM2 Data Sharing Portal was extended to also support the Leaf Pack Network of teachers, students, and citizen monitors who assess aquatic ecosystem health through aquatic macroinvertebrate surveys using Leaf Pack Experiment stream ecology kits.

The main instance of this application is currently hosted at http://monitormywatershed.org.

Deployment Guide

A guide for deploying the data sharing portal is available here.

Example POST Requests for Streaming Data

The ODM2DataSharingPortal relies on devices that can push data to the web using HTTP POST requests. We've included some documentation where you can view example POST requests to learn the syntax.

EnviroDIY Datalogger Code and Libraries

The source code for the EnviroDIY Mayfly loggers, examples, and libraries are hosted in GitHub at https://github.com/EnviroDIY.

Credits

Funding for this work was provided by the William Penn Foundation under grant 158-15.

The authors gratefully acknowledge the work and contributions of the EnviroDIY community and those who participated in testing and advancing the Monitor My Watershed Data Sharing Portal software.

About

A Python-Django web application enabling users to upload, share, and display data from their environmental monitoring sites via the app's ODM2 database. Data can either be automatically streamed from Internet of Things (IoT) devices, manually uploaded via CSV files, or manually entered into forms.

Topics

Resources

License

Packages

No packages published