Name: question_tool
Owner: Berkman Klein Center for Internet & Society
Description: A web application to propose and vote on questions on a particular subject.
Created: 2015-06-15 17:42:11.0
Updated: 2018-01-15 17:39:16.0
Pushed: 2017-09-22 20:49:30.0
Homepage: http://cyber.law.harvard.edu/questions/chooser.php
Size: 8371
Language: JavaScript
GitHub Committers
User | Most Recent Commit | # Commits |
---|
Other Committers
User | Most Recent Commit | # Commits |
---|
The question and answer tool is a real-time web application written in Meteor.js that allows anyone with a web browser and connection to the server to create a question/answer instance on a particular subject, propose a question, view other's questions, reply to questions and vote on questions on that particular subject.
For any server that is running the question tool software, any number of subject instances can be active at one time. All users of an instance see any actions performed on the instance at the same time (voting, posting of questions or responses, etc) thanks to the magic of Meteor.js.
The question tool was written to gather questions from an online audience and present them in a coherent and ordered way that communicates the communities interest in those questions by means of votes or responses.
The tool has various permission levels:
By design, all instances are public - anyone with a web browser and connection to the server can view any instance, question or response, with the exception questions hidden by instance admins or moderators.
A user who is signed in can create an instance with a specific topic, after which web users can propose questions. Once the question is submitted, users can then vote on the question. Questions that are new, active or popular are pushed to the top. Users can also reply to questions.
Requirements: Mongo 2.6+, Node 0.10.36+
Install
git clone the repo
build the meteor application
in the build directory, install node packages
create the mongo db and add necessary permissions
run the app
rt MONGO_URL='mongodb://app_user:app_passwd@127.0.0.1:27017/app_db'
rt MONGO_OPLOG_URL=mongodb://oplog_user:oplog_passwd@127.0.0.1:27017/local?authSource=admin
rt ROOT_URL='https://your.url.here'
rt HTTP_FORWARDED_COUNT=1
rt PORT=8000
rt MAIL_URL='smtp://user:password@mailhost:port/'
main.js
Setup
Navigate to the /server/lib/startup.js file to set the email of the Question Tool superadmin (is able to delete/rename instances) and add a mail server URL for emailing. Superadmin must create a Question Tool account and be logged in with the specified email address for the superadmin priveleges.
git checkout -b my-new-feature
git commit -am 'Add some feature'
npm test
git push origin my-new-feature
The question tool has been used at the Berkman Center for Internet & Society for over 10 years. It has been used at events, in class rooms, in forums, in meetings, any place where it is valuable to obtain community consensus over the topics that need to be pursued.
QuestionTool is licensed under the GPL
2015 President and Fellows of Harvard College