Skip to content
/ vcweb Public
forked from virtualcommons/vcweb

Django framework for collective action experiments

Notifications You must be signed in to change notification settings

tgpatel/vcweb

 
 

Repository files navigation

vcweb

vcweb is a Python/Django framework that purportedly helps developers build interactive web-based experiments for collective action researchers interested in social ecological systems. We maintain a managed instance of vcweb at https://vcweb.asu.edu but you are welcome to host your own server.

features

  • Web based experiment parameterization, with support for experiment-wide parameters and round-specific parameters. Standard parameters include show up fees, an exchange rate for tokens to currency, round durations, and group size. Custom parameters are defined by experiment developers; examples include initial resource levels and regrowth factors for common pool resource game. An experiment treatment consists of an ordered set of round parameterizations. Each round parameterization can be specified to repeat N times as well.
  • Support for two broad classes of experiments:
    • controlled experiments typically run in a computer lab with "captive" participants. These experiments are characterized by timed rounds of parameterizable duration, and round transitions manually managed by an experiment facilitator (with ongoing development to properly implement automated round transitions)
    • extended experiments spanning multiple days or weeks with cron-based scheduled custom experiment logic, e.g., at midnight perform some calculations, determine the current state of a resource and payments and send summary emails to all registered participants. Currently, round transitions occur at midnight.
  • Subject pool management and randomized invitation / recruitment with custom invitation emails
  • Flexible data model that captures Experiments, ExperimentConfigurations, RoundConfigurations, and arbitrary experiment data via the Entity Attribute Value Model to capture participant-specific data and group-specific data. Work is ongoing to simplify and improve this API.
  • Real-time chat and server push via sockjs-tornado and Redis (coming soon)
  • Existing experiment UIs have been implemented using Bootstrap 3, knockout, jQuery Mobile, and Sencha Touch but the view layer is unopinionated and experiments can be implemented with arbitrary web or mobile UIs. Some ideas: reactjs and Om, angular, emberjs, or direct javascript / canvas libraries like d3js or processingjs.

run an experiment

In order to run a vcweb experiment you'll need an experimenter account. Please contact us if you'd like to request an experimenter account.

participate in an experiment

In order to participate in a vcweb experiment you must be invited to one by an experimenter.

develop an experiment or contribute to the infrastructure

Build Status Coverage Status

For more information on how to install and deploy the software please visit https://bitbucket.org/virtualcommons/vcweb/wiki/Home (work in progress)

About

Django framework for collective action experiments

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 75.3%
  • CSS 19.1%
  • JavaScript 5.1%
  • Shell 0.5%