Vireo is a turnkey Electronic Thesis and Dissertation (ETD) Management System.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
.jshintrc Updated configuration for web deployment package. Nov 3, 2015
pom.xml - Columns and their card count Build Status

Vireo 4

Vireo is a turnkey Electronic Thesis and Dissertation (ETD) Management System. Starting with the 4.x release, Vireo offers fully customizable workflows and controlled vocabularies.

The software is presently in a Beta release. If you want to help with testing or development, GitHub issues and pull requests are encouraged!

Building Vireo 4


$ mvn clean package

or run for development:

$ mvn clean spring-boot:run

or run for production

$ mvn clean spring-boot:run -Dproduction


$ mvn clean package -DskipTests -Dproduction

If all compile-time tests pass, you should have both a vireo-4.0.x-SNAPSHOT.war and a in the target/ directory.

Apache Reverse Proxy Config

LoadModule rewrite_module modules/
LoadModule proxy_module modules/
LoadModule proxy_http_module modules/
LoadModule proxy_wstunnel_module modules/

<VirtualHost *:80>
  ServerName localhost

  ProxyPreserveHost On
  ProxyPass /
  ProxyPassReverse /
  ProxyRequests Off
  RewriteEngine on
  RewriteCond %{HTTP:UPGRADE} ^WebSocket$ [NC]
  RewriteCond %{HTTP:CONNECTION} Upgrade$ [NC]
  RewriteRule .* ws://localhost:8080%{REQUEST_URI} [P]


Testing Vireo 4


$ mvn clean test


$ npm run test

Server and Client

$ mvn clean test -DtestClient


$ mvn clean spring-boot:run
$ npm run protractor

Installing Zip Package to filesystem

Unzip package into preferred directory (or any directory you choose):

$ cd /opt/vireo
$ unzip ~/

Directory Structure of installed package

/opt/vireo$ ls
drwxr-xr-x 2 root root 4096 Nov 11 11:54 attachments
drwxr-xr-x 2 root root 4096 Oct  2 15:36 conf
drwxr-xr-x 5 root root 4096 Nov 11 11:54 webapp
  • attachments -- where the server stores uploaded files
  • conf -- where the external config files reside
  • webapp -- the extracted WAR file

Installing WAR Package in Tomcat

Copy war file into Tomcat webapps directory (your location may vary -- this is an example):

$ cp ~/vireo-4.0.x-SNAPSHOT.war /var/lib/tomcat/webapps/vireo.war

or as root:

$ cp ~/vireo-4.0.x-SNAPSHOT.war /var/lib/tomcat/webapps/ROOT.war

Running as a stand-alone Spring Boot application

java -jar target/vireo-4.0.x-SNAPSHOT.war


There is an external file under the conf directory that you can modify to override the values in the built-in

NOTE: The conf directory is only available if deployed from the ZIP package.

NOTE: If you need an external configuration file to the WAR file, you'll need to put a conf directory in the same directory as the WAR file (whether running inside tomcat or as stand-alone Spring Boot application).

You should override the database config and the spring secret key.