Prism is a tool for collective interpretation. It's an ongoing experiment by the Praxis Program at the University of Virginia Scholars' Lab
Ruby HTML CSS ApacheConf JavaScript CoffeeScript Cucumber
Failed to load latest commit information.
app Updates and addes a warning for system upgrade Nov 10, 2015
config reverted facebook auth to what it was Jul 18, 2016
db Comments out migration line that was causing problems in the Heroku d… Aug 14, 2014
doc Initial generation of Rails files Oct 19, 2011
features integration tests are a go Mar 14, 2012
lib Rails Best Practices fixes May 13, 2014
log Added a pages controller to have a default page to view Oct 20, 2011
public Added my information to humans.txt. May 8, 2013
script generated cucumber folder structure Mar 14, 2012
spec remove stale routes May 2, 2014
sql Added script to deduplicate word markings. May 6, 2014
test Initial generation of Rails files Oct 19, 2011
vendor Initial generation of Rails files Oct 19, 2011
.gitignore Travis testing matrix Apr 18, 2013
.rails_footnotes Adds rails_footnotes to show debugging info in development mode Mar 14, 2012
.rspec Added nyancat formatter Dec 1, 2011
.ruby-gemset Updates for rvm and heroku Feb 19, 2014
.travis.yml updates .travis.yml Jul 18, 2016
Gemfile updates gemfile for testing Jul 18, 2016
Gemfile.lock updates gemfile for testing Jul 18, 2016
Guardfile Security Updates Nov 20, 2014
LICENSE Adds Apache 2.0 License; closes #1 Mar 14, 2012
LOGO.jpg feature branch Mar 18, 2013
Procfile PUMA. Feb 11, 2015
README Adds DOI for citable code Jul 14, 2014
Rakefile Initial generation of Rails files Oct 19, 2011
Readme.md Comments out migration line that was causing problems in the Heroku d… Aug 14, 2014
app.json Implements a Deploy to Heroku button Aug 12, 2014
config.ru Initial generation of Rails files Oct 19, 2011

Readme.md

Prism

DOI

Prism is a tool for collective interpretation, an experiment in crowd-sourcing and visualizing many readings of a set of common texts. As part of our project to make crowd-sourcing more meaningful and less mechanical, users interact subjectively with a text, highlighting it in accordance with certain interpretive categories, such as sound, sense, and modernism, to produce an aggregate visualization of all other users' markings that shows points of analytical agreement or disagreement.

The basic workflow is simple:

  1. Play in the sandbox on our introductory text to practice using the highlighting functionality.
  2. After creating an account, choose a text to highlight.
  3. The highlighting page automatically starts with the first category selected. Simply click and drag over the desired text to change its color. To switch categories, simple click on the desired category. Click on the eraser tool and then click and drag over text to undo any unwanted highlights.
  4. When done, click the submit button to see a visualization.
  5. To switch to the visualization for a different category, simply click on a different category.

Prism is an ideal tool for research and pedagogy alike; students can highlight a text and discuss their markings in class, and scholars can see how the world at large views these texts.

Getting Started

Prism is a Ruby and Rails project, with several tools to get you up-and-running quickly. Assuming you have Ruby and git installed properly, the following commands will pull the latest version of the software, set up the database, and import some default documents.

$ git clone git://github.com/scholarslab/prism.git
$ cd prism
$ bundle install
$ rake db:migrate
$ rake import:docs

Contributing to the Project

Build Status Code Climate

For a list of people who have contributed to the codebase, see the list of contributors.

Patches/Pull Requests

  • Fork the project.
  • Make your feature addition or bug fix.
  • Add tests for it, and make sure all the tests pass. This is important so we don't unknowingly break your changes in a future release. If you're fixing a bug, it helps us to verify that your bug does in fact exist.
  • Commit your changes to your own fork.
  • Send us a pull request, with a clear explanation of the changes. Bonus points for topic branches.

Deploy to Heroku

Deploy

Deploy your own Prism installation to Heroku by clicking the "Deploy to Heroku button." Follow the Heroku instructions for importing your source code and cloning the new repository to your desktop. From within your new app's repository, you will need to run the following command to set up the database:

$ heroku run rake db:migrate

Note: the Facebook and Google login functions will only work on your personal installation if you integrate into heroku your own set of login credentials.

$ heroku config:add FACEBOOK_KEY=‘your Facebook key’
$ heroku config:add FACEBOOK_SECRET=“your Facebook secret”
$ heroku config:add GOOGLE_KEY=‘your google key’
$ heroku config:add GOOGLE_SECRET=“your google secret”

Feedback

We rely on the [Github issues tracker][issues] for feedback on issues and improvements.

Copyright / License

This software is released under the Apache 2.0.