Three-tier build for EarthCollab VIVO
FreeMarker Web Ontology Language Java CSS JavaScript HTML
Latest commit d3e12e4 Jun 21, 2017 @gneissone gneissone Fix merge conflict

#UNAVCO VIVO project template This is a git repository template for working with and customizing VIVO. It uses the three tiered build approach documented by the VIVO project. The project source files (VIVO and Vitro) are tracked using Git Submodules.

For a more detailed explanation of setting up the VIVO environment, consult the VIVO version 1.8.1 installation instructions.

Building VIVO from this template will add UNAVCO-specific customizations. Customizations include:

  • Addition of Magnific lightbox for linked thumbnails (required updating jQuery to 1.7+)
  • Removal of Sparkline (publication) graphs from a person's page
  • Removal of references to VIVO's old browse page
  • Adjustments to statistics displayed on home page
  • Addition of a word cloud showing expertise and research areas
  • Addition of common nicknames to Solr's synonym file
  • Support for UNAVCO's expanded ontology
    • Display a map on a GPS station's page
    • Display expertise on a Person's page
    • Swap list of departments on home page for member institutions

##Building the application The VIVO project has moved to using Apache Maven. To build the project, follow these instructions (modified from Ted Lawless' template, see link below):

git clone vivo-source
cd vivo-source
git submodule init

#Pull in VIVO and Vitro

git submodule update

#Check out a Maven-enabled version of VIVO and Vitro

cd Vitro
git checkout develop
cd ../VIVO
git checkout develop

#Copy default-settings.xml

cp installer/default-settings.xml installer/custom-settings.xml

#Using your editor of choice, change tomcat-dir to the correct path and immediately after add the following (minus #, of course):

nano installer/custom-settings.xml

#Build and deploy

mvn install -s installer/custom-settings.xml

Before you start Tomcat, be sure to edit and applicationSetup.n3 (if necessary) in the vivo-dir directory you specified in custom-settings.xml.

##UNAVCO-specific notes UNAVCO uses an expanded ontology to capture geodesy-related concepts. The local ontology is included as earthcollab.n3, but this will change when a permanent namespace for the ontology is established. One extension is the 'Station' concept. Here is RDF for the station concept:

@prefix ec:    <> .
@prefix rdfs:  <> .
@prefix obo:   <> .
@prefix owl:   <> .
@prefix wgs84: <> .
@prefix vitro: <> .

ec:Station  a                     owl:Class ;
    rdfs:label                    "Station"@en-US ;
    rdfs:subClassOf               obo:BFO_0000029 , wgs84:SpatialThing ;
            <> ;
            <> ;
    vitro:inClassGroup            <> ;
            <> .

and a little more RDF to tell VIVO to use a custom template that adds a map to the station's page:

@prefix ec:    <> .
@prefix vitro:   <> .
@prefix xsd:     <> .
          "individual--ec-station.ftl"^^xsd:string .

Instructions on where to put that RDF are at The map will only show up if a station has wgs84:lat and wgs84:long attributes.

Because some of the UNAVCO-specific modifications are baked into the template, blindly cloning this repository and loading in your data probably won't yield ideal results. Feel free to leave a comment on the issue tracker (

##For more information on how to set up the three-tiered build The original three-tiered build template is available here: