Skip to content


waldir edited this page · 9 revisions
Clone this wiki locally

Last updated 04/11/2010.

To learn more about PaperCube, you can try it out at and view the demo video at

If you want to read more about PaperCube and related research go to

There is code reference documentation for PaperCube and the NodeGraph
framework at and, respectively.

If you have specific questions, please email Peter directly at


PaperCube is open source software released under the MIT License
(see license.js)

Copyright 2008-2009, Peter Bergström


PaperCube uses SproutCore 0.9.23. To install it, please run the following

% sudo gem install sproutcore —version=0.9.23

Then, to run in development, start sc-server in the main project directory:

% cd papercube
% sc-server

Finally, point your browser to the following URL:


There is a wealth of additional information on the SproutCore wiki at and at the main project website,


To build, in the main directory, run sc-build. Copy the resulting build to your
web server. Please note that the sc-config file at the root of the directory
can be used to customize it further.


Currently, the API is PHP-based. In the “database_api” directory, there is a
file, “request.php” that interfaces with the database.

Currently, the database relies on CiteSeer. The database is quite large, but
an exported version of the database is available at the following URL:

The schema is available in the “database_api” directory in “database.txt”

Please note that in the code, there are references to “/api/request.php”. If
you change your server or install location, this will be different.


Some additional notes on setup:

If you’re running on a Mac, I would but that in /Library/WebServer/Documents/api which then will be accessible through http://localhost/api/request.php (with your mysql username and password set in the PHP script)

Try these queries to test your setup:

Search results for papers:

Details on one paper:

Extended details:

Search results for authors:

Details on one author:

If this works, you’re almost there!

If you’re running PaperCube in development mode using sc-server, you are most likely accessing it via http://localhost:4020/papercube. If so, you will have to proxy the port 80 request.php calls in apache in httpd.conf:

<VirtualHost *:80>
ProxyPass / http://localhost:4020/
ProxyPassReverse / http://localhost:4020/

If you’re running PaperCube as a built package, you can put the application in /Library/WebServer/Documents and then it will just live on port 80 out of the box.



PaperCube uses the SproutCore JavaScript framework.

Something went wrong with that request. Please try again.