Skip to content
For accepting contributions to the arc catalog
Ruby JavaScript
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
app
config
db
doc
lib
public
script
test
vendor
.gitignore
Capfile
Gemfile
Gemfile.lock
README
Rakefile
config.ru

README

##############################################################################
# Copyright 2011 Applied Research in Patacriticism 
# and the University of Virginia
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
###############################################################################

--------------------------------------
ARC Inbox

The inbox is a simple RoR application that allows users to upload .rdf content
that should be indexed into the catalog.

--------------------------------------
Collex architecture

Collex is a complex project made up of a number of subprojects that all have to
be in place for it to work. Most users will probably just need to set up the 
main Collex piece and point it at the existing Catalog. If that is all you want
to do, then you don't need to understand the following architecture and you 
don't need to download the "solr" or "catalog" projects.

When Collex is deployed, it is branded with the name of a particular 
"Federation", like NINES or 18thConnect. The website that the end user goes to 
will look like that federation, but the code behind it is the "collex" 
project here.

When a search is done from "collex", the request is made to the "catalog" 
project, which is a web service that exposes all the documents that have been 
stored.

The "catalog" webservice processes the request and forms the correct call to 
the "solr" webservice.

The "arc-inbox" is a simple website that allows users to upload new .rdf 
content that will be added to the catalog / solr index.

The documents are added to the solr index by converting RDF documents using 
the project "rdf-indexer".

The About section of "collex" and the News section of "collex" are two separate
WordPress installations. The recommended theme to use is in the 
"collex_wordpress_theme" project.

The "typewright" project can be attached to a "collex" instance if you wish by 
setting it up in the site.yml file of "collex". The "typewright" project is a 
webservice that keeps the information about all the typewright-enabled
documents. The actual web presence of typewright is in the "collex" project 
under subfolders named typewright.

--------------------------------------
Local Install

1) Download this project to your local development area.
2) Copy config/site.example.yml to config/site.yml.
3) Modify this file to suit your server and your needs.
   ** DO NO CHECK IT IN **
5) The first time you run, you will have to run "bundle install".
6) Create and migrate the database with the standard rake commands.

--------------------------------------
Deployment

The inbox is deployed using capistrano, and can be deployed to either
a staging server (edge) or a production server. The configuration for each
host is found in config/site.yml at the bottom of the file. Fill
in the necessary data for each site. To complete this section, you
must have a user created on the target host which will run the catalog.
That user must have full read/write permissions on the install directory.
Additionally you must generate an ssh key-pair on your development machine and
install it on the target host. Add an entry in your ~/.ssh/config file for
each host. Example:
   
   Host edge-inbox
       Hostname 128.128,128,128
       User collex
       Port 22
       IdentityFile ~/.ssh/edge-collex
       
1) First time deployment has a few extra setup steps
     a) Setup common structures on the host, run "cap edge_setup"
	  b) Login to the host and navigate to the install directory.
	  c) From there, cd into shared/config.
	  d) Fill in the template database.yml and site.yml
	  e) Startup mysql and create the database 'inbox_production'
2) After this setup, each subsequent deployment is accomplished by running:
   "cap menu"
	It will present you with a menu for starting the deployment.

===============================================================================
= NOTE: files that have been uploaded to the inbox will be placed in the
= "./uploads/" directory.
===============================================================================


Something went wrong with that request. Please try again.