A proof-of-concept application for supporting very-large-scale web annotation.
There are four parts:
- The backend is written in Python using the Flask microframework. It runs on Heroku.
Most of that's in in
silsannotate/views.py
. - The frontend is written in Javascript, based on the compiled CoffeScript from the
okfn/annotator project. It's all in the
silsannotate/static/js
folder. - The data store is CouchDB, currently hosted on Cloudant.
- The user and article data is in source control, even though it should be in the db. It's easier this way, especially
since they don't change over time. User data is simply a PNG picture whose name is the user's (made-up) first name.
They're in
silsannotate/static/img/users
. The documents to annotate are insilsannotate/templates
; there's one for every article. Note that you have to copy all the stuff inside the<head>...</head>
tags into each article or the application won't load. It's ugly, I know.
You'll need to install and use Git. Thankfully, you can ignore 95% of what Git can do; you just need to be able to clone, push, and commit. There are lots of tutorials on Git online. Here are a few:
- http://www.webdesignerdepot.com/2009/03/intro-to-git-for-web-designers/
- http://www.youtube.com/GitHubGuides
- http://sixrevisions.com/resources/git-tutorials-beginners/
I'm guessing this won't happen for our project, as it's pretty involved to install. You can follow instructions
from Heroku on getting started and cloning from an
existing project. Once you've done that, you can get
the relevant configs by running heroku config --app secure-dusk-1121
; you'll need to set these up as environmental
variables on your system.