The Web-based Interactive River Model (WIRM) was a part of a research project on web-based approaches to environmental modeling and decision support. It was primarily intended as a demonstration of modern web technologies for creating interactive visualizations and user interfaces for water quality simulation model. This research was being conducted by Jeff Walker, PhD Candidate, and Dr. Steve Chapra, Professor in the Dept. of Civil and Environmental Engineering at Tufts University. For more information about this research and additional projects, visit phd.walkerenvres.com.
Simulation models are widely used to support environmental management and decision making. However, most models require strong technical and programming skills due to antiquated or poorly designed user interfaces. This leaves decision makers and stakeholders reliant on modeling experts to develop, run and analyze models on their behalf.
The WIRM server was built using the Django web framework, which is "a high-level Python Web framework that encourages rapid development and clean, pragmatic design." Django is a popular and mature framework that has been under active development for over many years.
In addition, this site utilizes a number of Django plug-ins including:
- Django Rest Framework: for delivering a REST-based API for accessing model parameters, projects, users and comments (License)
- Registration: user account registration and email-based activation (License)
The source code for the server application is available on GitHub.
The client-side web application controls the user interface, simulation engine and visualization renderer, all of which are executed within the web browser. It is built using a number of free and open-source software libaries including:
- jQuery: DOM manipulation, AJAX communication (License)
- jQuery-ui: slider widgets (License)
- Backbone.js: MVC application framework (License)
- Twitter Bootstrap: front-end framework (License)
- Numeric.js: element-wise array operations (License)
- d3.js: data visualization (License)
- MathJax.js: equation rendering using Latex-style code (License)
- Moment.js: date/time formatting (License)
The source code for the client application is available on GitHub.
Use of this website is at your own risk and assumes acceptance of terms described in the disclaimer.