Design Your Transit System
This is a web-based survey system for collecting user preferences about improvements. It can be used to survey about any set of options, but has been tailored to be used for surveying about transportation investments and improvements.
Users are given a "budget" and asked to spend it on a set of investments and improvements. The budget provided isn't enough to cover all of the options, so users have to make choices. Users are shown the costs and benefits they have accrued as they add and remove options. In this way, the survey serves two purposes: collecting data on user preferences while at the same time educating users about the costs and benefits of investments and improvements in transit systems.
The results of the survey can be exported by an admin as a CSV file for use in comparing how different groups of transit users prioritize various improvements and investments.
The system supports multiple languages, see the
data/strategies.js for an example of how to set up more than one language.
An example can be seen at http://design-your-transit-system.blinktag.com/
Install node.js and mongodb
On OS X, if you have brew installed:
brew install node brew install mongodb
Create a .env file
Create a file in the project root called
.env. Setup values for
MONGODB_URI=mongodb://127.0.0.1:27017/yoursurveydatabase ADMIN_USERNAME=username ADMIN_PASSWORD=securepassword
ADMIN_PASSWORD are used for bulk .csv export of survey responses.
In a new tab, run the app
npm run dev
Open your browser and visit:
While running the app, visit:
The username and password are defined in the
.env file in the root of the project.
A version of this survey system has been used by over 30 transportation agencies, including Long Beach Transit, Boulder Transit, BART, Santa Monica Big Blue Bus, Lincoln Transit, Chapel Hill Transit, Foothill Transit, Ohio DOT, Salt Lake City and Fort Worth Transportation Authority and The Kauaʻi Bus.
This project is licensed under GNU General Public License v3.0.